相关疑难解决方法(0)

LINQ:将lambda表达式作为参数传递,由方法执行并返回

所以这是场景:我有一系列不同的存储库类,每个类都可以使用独立的数据上下文或共享上下文.在使用隔离上下文的情况下,我想向基类添加一个方法,允许我将lambda指定为参数,让该表达式由所选存储库的隔离上下文执行并返回IQueryable结果.方法签名看起来如何,以及如何将表达式传递给上下文?

我需要解决方案尽可能通用,因为可以使用任何可能的模型对象/表.

这基本上是我要做的事情:

IAssetRepository repo = new AssetRepository(true); // true indicates isolated context
var results = repo.ExecuteInContext<SomeType>(SomeTable.Where(x => 
                                              x.SomeProp.Equals(SomeValue)));
Run Code Online (Sandbox Code Playgroud)

c# linq

50
推荐指数
3
解决办法
7万
查看次数

标签 统计

c# ×1

linq ×1