第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我可以在EntityFramework中的ObjectSet上使用多少Include以保持性能?

我可以在EntityFramework中的ObjectSet上使用多少Include以保持性能?

HUX布斯 2019-07-27 09:56:13
我可以在EntityFramework中的ObjectSet上使用多少Include以保持性能?我在我的個人資料頁面使用以下LINQ查詢:var userData = from u in db.Users                         .Include("UserSkills.Skill")                         .Include("UserIdeas.IdeaThings")                         .Include("UserInterests.Interest")                         .Include("UserMessengers.Messenger")                         .Include("UserFriends.User.UserSkills.Skill")                         .Include("UserFriends1.User1.UserSkills.Skill")                         .Include("UserFriends.User.UserIdeas")                         .Include("UserFriends1.User1.UserIdeas")                                where u.UserId == userId                               select u;它有一個長對象圖并使用許多包含。它現(xiàn)在運行得很好,但是當網(wǎng)站有很多用戶時,它會影響性能嗎?我應該用其他方式嗎?
查看完整描述

3 回答

?
幕布斯6054654

TA貢獻1876條經(jīng)驗 獲得超7個贊

是的,它會的。如果擴展主表行上的多個詳細信息行,請避免使用Include。

我相信EF將查詢轉(zhuǎn)換為一個大型連接而不是幾個查詢。因此,您最終會在詳細信息表的每一行上復制主表數(shù)據(jù)。

例如:Master - > Details。比如說,master有100行,Details有5000行(每個master有50行)。

如果延遲加載詳細信息,則返回100行(size:master)+ 5000行(size:details)。

如果使用.Include(“Details”),則返回5000行(size:master + details)。基本上,主要部分重復50次。

如果包含多個表,它會向上相乘。

檢查EF生成的SQL。


查看完整回答
反對 回復 2019-07-27
  • 3 回答
  • 0 關(guān)注
  • 822 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號