Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 20726|Antwoord: 0

[Bron] Verschillen tussen .net IQueryable en IList

[Link kopiëren]
Geplaatst op 22-08-2016 11:22:07 | | |

IList (IList<T>) creëert onmiddellijk persistente data in het geheugen, wat geen "uitgestelde uitvoering" toepast, en als de geladen entiteit geassocieerde entiteiten heeft, wordt de bijbehorende entiteit niet geladen (noch onmiddellijk noch lui).

IQeurable <T>creëert niet direct persistente data in het geheugen, maar laadt data alleen in het geheugen als deze worden doorlopen (bijvoorbeeld via forreach), worden omgezet naar een lijst, enzovoort, en kan "uitgestelde uitvoering" bereiken; als de momenteel geladen entiteit associaties heeft, kan deze geassocieerde entiteit bij de volgende toegang worden geladen.

Bekijk het volgende stukje code:
//IList的情况
IList-gebruikers = res. ToList(); Gebruikers zijn in het geheugen geladen, maar de bijbehorende entiteit (UserInfos) voor elke gebruiker is dat niet
                       wordt geladen, dus de volgende regel code verloopt niet soepel
Var SSS = gebruikers. Waar(p => p.UserInfos.ID != 3); Er wordt hier een fout gemeld omdat P's UserInfos-entiteit niet kan worden geladen

IQuerable's situatie
IQuerable gebruikers = resoluut. AsQueryable(); Gebruikers worden niet direct geladen, en de bijbehorende entiteit kan worden verkregen door "lui laden"
                                   Snap het
Var SSS = gebruikers. Waar(p => p.UserInfos.ID != 3); De bijbehorende SS werd hier met succes verkregen




Vorig:.net ontwikkelt WeChat om gebruikersinformatie te verkrijgen en de functie [met broncode] te scannen [met broncode]
Volgend:Vraag om een Alipay-order die het gebruik van discuz monitort, @小渣渣
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com