문제

나는 함께 일하고있다 두더지 그리고 System.data.linq.table을 조롱합니다.

나는 그것을 잘 구성했지만, 그것을 사용할 때, 그것은 iqueryable을 원합니다.공급자 조롱 (몰드).

나는 단지 일반 LINQ를 객체에 사용하기를 원합니다. 그것이 무엇인지 아십니까?

다음은 사용할 수있는 구문입니다.

MTable<User> userTable = new System.Data.Linq.Moles.MTable<User>();
userTable.Bind(new List<User> { UserObjectHelper.TestUser() });

// this is the line that needs help
MolesDelegates.Func<IQueryProvider> provider = //Insert provider here!
                                                             ^
userTable.ProviderSystemLinqIQueryableget = provider         |
                                                             |
                                                             | 
what can I put here? ----------------------------------------+
도움이 되었습니까?

해결책

가장 간단한 것입니다 List<T> 로 사용할 수 있습니다 IQueryable<T> ~을 통해 .AsQueryable().

MolesDelegates.Func<IQueryProvider> provider = () => userLinqList.AsQueryable().Provider;

그것이 내가 Memory 데이터베이스로 사용하여 LINQ2SQL을 조롱하는 것입니다. 단순하고 우아합니다.

다른 팁

간단한 솔루션은 목록을 테이블에 바인딩하는 것입니다. iqueryable 방법은 자동으로 목록에 다시 경영됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top