是否可以重构已编译的 LINQ to SQL 查询?假设我有一个带有一些逻辑的查询,我想在它的基础上进行构建。是否可以重用该查询?
例如,假设我有一个基本查询来获取活动项目:
Func<DataContext, IQueryable<Item>> GetActiveItems =
CompiledQuery.Compile((DataContext context) =>
context.Items.Where(item => item.IsActive));
我想在上述表达式的基础上进行另一个查询。的文档CompiledQuery
表明我不能在编译委托的结果上应用另一个运算符。那么重构这些表达式的推荐方法是什么?
我想我应该使用Expression
,但应该如何使用呢?或者,还有更好的方法?