我正在与工作和嘲笑一个系统.Data.Linq.Table。

我知道了构建精细,但是当我使用它,它想要的IQueryable。的提供商以被模拟(moled),以及

我只是希望它的正常使用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;

这就是我作为一个使用内存数据库,以模拟出LINQ2SQL。简单优雅。

其他提示

在简单的解决方案是将list.AsQueryable()结合到表中。所述的IQueryable方法将自动地被重新路由到列表中。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top