Linq to Entities 没有泛型参数
Linq to Entities without generic parameter
如果这是 属性 实现,其中 Context
是 Entity Framework DbContext
并且 Tours
是 DbSet
...
public IQueryable ListQuery => Context.Tours;
... 那么调用代码继续查询的能力有限。例如,我什至无法对结果调用 ToList()
。
如何 return 一个未类型化的查询,以便我可以对结果执行 Take
和 Skip
之类的操作,而调用代码不知道类型是什么?
我不希望类型从接口中泄漏出来,因为这样一来我的数据访问代码就特别绑定到一个 EF 模型。
我把结果投给IQueryable<object>
。我不确定为什么这是允许的。是因为协变吗?
如果这是 属性 实现,其中 Context
是 Entity Framework DbContext
并且 Tours
是 DbSet
...
public IQueryable ListQuery => Context.Tours;
... 那么调用代码继续查询的能力有限。例如,我什至无法对结果调用 ToList()
。
如何 return 一个未类型化的查询,以便我可以对结果执行 Take
和 Skip
之类的操作,而调用代码不知道类型是什么?
我不希望类型从接口中泄漏出来,因为这样一来我的数据访问代码就特别绑定到一个 EF 模型。
我把结果投给IQueryable<object>
。我不确定为什么这是允许的。是因为协变吗?