Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 20726|Odpoveď: 0

[Zdroj] Rozdiely medzi .net IQueryable a IList

[Kopírovať odkaz]
Zverejnené 22. 8. 2016 11:22:07 | | |

IList (IList<T>) okamžite vytvára trvalé dáta v pamäti, čo neimplementuje "odložené vykonávanie", a ak má načítaná entita pridružené entity, táto entita sa nenačíta (ani okamžite, ani lenivo).

IQeurable <T>nevytvára okamžite trvalé dáta v pamäti, ale načítava ich do pamäte len vtedy, ak sú prechádzané (napr. cez forreach), konvertované na zoznam a podobne, a môže dosiahnuť "odložené vykonanie", ak má aktuálne načítaná entita asociácie, táto priradená entita môže byť načítaná ďalším prístupom.

Pozrite sa na nasledujúci kód:
//IList的情况
IList používatelia = res. ToList(); Používatelia boli načítaní do pamäte, ale pridružená entita (UserInfos) pre každého používateľa nie
                       je načítaný, takže ďalší riadok kódu neprejde hladko
VAR SS = Používatelia. where(p => p.UserInfos.ID != 3); Chyba je tu hlásená, pretože entita UserInfos od P sa nedá načítať

Situácia IQuerable
IQueryable Users = res. AsQueryable(); používatelia sa nenačítavajú okamžite a príslušnú entitu je možné získať "lenivým načítaním"
                                   Chápem
VAR SS = Používatelia. where(p => p.UserInfos.ID != 3); Zodpovedajúci SS bol úspešne získaný tu




Predchádzajúci:.net vyvíja WeChat na získavanie informácií o používateľovi a skenovanie funkcií [so zdrojovým kódom]
Budúci:Požiadajte o sledovanie príkazu na Alipay, @小渣渣
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com