所以这是情境:我有一系列不同的存储库类,每个类可以使用独立的数据上下文或共享上下文。在使用独立上下文的情况下,我希望向基类添加一个方法,用lambda表达式作为参数,并由所选存储库的隔离上下文执行该表达式并返回IQueryable结果。该方法签名应如何设计?如何将表达式传递给上下文?
我需要解决方案尽可能通用,因为任何可能的模型对象/表都可以使用。
以下就是我要做的事情的概述:
我需要解决方案尽可能通用,因为任何可能的模型对象/表都可以使用。
以下就是我要做的事情的概述:
IAssetRepository repo = new AssetRepository(true); // true indicates isolated context
var results = repo.ExecuteInContext<SomeType>(SomeTable.Where(x =>
x.SomeProp.Equals(SomeValue)));
from x in y where predicate select z
正常工作。 - Neil Barnwell