简体   繁体   English

过滤 DBSet、DBSet.AsQueryable() 或 DBSet.AsQueryable<t> ()</t>

[英]Filter on DBSet, DBSet.AsQueryable() or DBSet.AsQueryable<T>()

Should you add filtering (and eg ordering) to the DBSet object or first call DBSet.AsQueryable() or DBSet.AsQueryable()?您应该向 DBSet object 添加过滤(例如排序)还是首先调用 DBSet.AsQueryable() 或 DBSet.AsQueryable()?

In which case do you need to use the next functions?在什么情况下需要使用下一个函数?

Context.Set<T>().Where<>
Context.Set<T>().AsQueryable<T>().Where<>
Context.Set<T>().AsQueryable().Where<>

There is no need to call IQueryable because DBSet<T> result is already returning as queryable.无需调用IQueryable ,因为DBSet<T>结果已作为可查询返回。

For example this:例如这个:

Context.Set<MyTable>.Where(i => i.itemId == 1) // returns IQuerable<MyTable>

will return a list of IQueryable results.将返回IQueryable结果列表。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM