星空网 > 软件开发 > ASP.net

EntityFramework IEnumerable,IQueryable ,Include

 使用IQueryable

    using (var db = new CentaStaffEntities())      {        IQueryable<Staff> queryablestaffs = db.Staff.AsQueryable().OrderBy(p=>p.StaffID).Skip(3).Take(3);        foreach (var item in queryablestaffs)        {          Console.WriteLine(item.CnName);        }       }

 EntityFramework IEnumerable,IQueryable ,Include

 

使用IEnumerable

      using (var db = new CentaStaffEntities())      {         IEnumerable<Staff> enumerablestaffs = db.Staff.AsEnumerable().OrderBy(p => p.StaffID).Skip(3).Take(3);        foreach (var item in enumerablestaffs)        {          Console.WriteLine(item.CnName);        }      }

EntityFramework IEnumerable,IQueryable ,Include

 

IQueryable接口与IEnumberable接口的区别:  IEnumerable<T> 泛型类在调用自己的SKip 和 Take 等扩展方法之前数据就已经加载在本地内存里了,而IQueryable<T> 是将Skip ,take 这些方法表达式翻译成T-SQL语句之后再向SQL服务器发送命令,它并不是把所有数据都加载到内存里来才进行条件过滤。

参考:http://www.cnblogs.com/ambon/articles/4766924.html

 

Include(),两表必须含有外键关系,只需要指定键名对应的类属性名即可,不需指定结果字段(即全部映射)。默认搜索某表时,不会顺带查询外键表,直到真正使用时才会再读取数据库查询;若是使用 Include(),则会在读取本表时把指定的外键表信息也读出来。
EntityFramework IEnumerable,IQueryable ,Include

 using (var db = new TestEntities())      {        IEnumerable<Student> enumerablestaffs = db.Student;        foreach (var item in enumerablestaffs)        {          //每次都会获取          Console.WriteLine(item.Class.Name);        }      }

EntityFramework IEnumerable,IQueryable ,Include

 EntityFramework IEnumerable,IQueryable ,Include

 

Include

      using (var db = new TestEntities())      {        //预加载关联表 前提必须有主外键关系        IEnumerable<Student> enumerablestaffs = db.Student.Include("Class");        //只查询一次        foreach (var item in enumerablestaffs)        {          Console.WriteLine(item.Class.Name);        }      }

EntityFramework IEnumerable,IQueryable ,Include

Left join

 




原标题:EntityFramework IEnumerable,IQueryable ,Include

关键词:ie

ie
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

tiktok 账户:https://www.goluckyvip.com/tag/82456.html
tiktok iso:https://www.goluckyvip.com/tag/82457.html
tiktok bc:https://www.goluckyvip.com/tag/82458.html
tiktok m:https://www.goluckyvip.com/tag/82459.html
tiktok 事件:https://www.goluckyvip.com/tag/82460.html
tiktok怎么添加独立站链接:https://www.goluckyvip.com/tag/82461.html
下周开始,安徽人免费游九华山,带上身份证就:https://www.vstour.cn/a/408234.html
上海滑雪场门票价格?:https://www.vstour.cn/a/408235.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流