天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

看看Entity Framework 4生成的復雜的分頁SQL語句

  之前發現Entity Framework 4生成的COUNT查詢語句問題,今天又發現它生成的分頁SQL語句問題,而LINQ to SQL卻不存在這個問題。

  >>> 來看一看,瞧一瞧!

  上代碼:

  看生成的SQL語句:

  1. Entity Framework生成的SQL:

  一個TOP,三個FROM。

  2. LINQ to SQL生成的SQL:

  無TOP,兩個FROM。

  兩者的差距一目了然。

  >>> 再來看一個:

  將上面代碼中Where的查詢條件改為常量,即Where(coder => coder.Age > 20),見下圖:

  然后看看生成的SQL。

  1. Entity Framework生成的SQL:

  明顯不一樣吧(顏色),實際上只是少了個exec sp_executesql,但會帶來性能影響(sp_executesql will use cached plan to get more performance, 這里談到了這個問題)。

  2. LINQ to SQL生成的SQL與之前的一樣。

  Entity Framework考慮了多數據庫支持、存儲過程支持,卻忽視了這個地方。

  從LINQ to SQL的DataContext到Entity Framework的ObjectContext,然后又發布ADO.NET Entity Framework Feature CTP5搞了個DbContext,DbContext也沒有解決這個問題,感覺微軟的思路有些亂。

  目前看來,如果用Entity Framework 4,并在乎性能,只有兩個選擇:1. 不用LINQ to Entities,自己寫SQL或存儲過程;2. 自己寫個Entity Framework ADO.NET provider for SQL Server 。

  更新:從執行計劃來看, Entity Framework生成的SQL似乎對性能沒什么影響。 

  補充:

  兩個SQL的執行計劃比較:

  a) Entity Framework生成的SQL:

  b) LINQ to SQL生成的SQL:

NET技術看看Entity Framework 4生成的復雜的分頁SQL語句,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产精品亚洲精品久久国语 | 67194con免费福和视频 | 久操久操久操 | 欧美最猛性XXXXX肛交 | 伊人精品影院一本到综合 | 久久才是精品亚洲国产 | 国产 在线 亚洲 欧美 动漫 | 国产亚洲日韩另类在线观看 | av免费网站不卡观看 | 国产又黄又硬又粗 | 国产三级在线免费观看 | 久久学生精品国产自在拍 | 亚洲视频免费在线观看 | 99RE6这里只有精品国产AV | 色即是空 BT | 动漫美女喷水 | 亚洲日韩国产成网站在线 | 久久久视频2019午夜福利 | 国产高清在线观看视频 | 亚洲日韩有码无线免费 | 在教室伦流澡到高潮H女攻视频 | 找老女人泻火对白自拍 | 正在播放国产尾随丝袜美女 | 欧美黄色一级 | 亚洲视频中文字幕在线 | 色综合精品无码一区二区三区 | 久久99精品国产麻豆婷婷 | 区一区二视频免费观看 | 挺进老师的紧窄小肉六电影完整版 | 色cccwww| 伊人亚洲综合网色 | 夜里18款禁用的免费B站动漫 | 超碰日韩人妻高清视频 | 青柠电影高清在线观看 | 我的美女房东未删减版免费观看 | 2020亚洲 欧美 国产 日韩 | 日本二区三区欧美亚洲国 | YY8848高清私人影院 | 99re2.久久热最新地址 | 亚洲精品久久久无码AV片软件 | 超碰国产视频免费播放 |