Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 20726|Vastaus: 0

[Lähde] Erot .net IQueryablen ja IListin välillä

[Kopioi linkki]
Julkaistu 22.8.2016 11.22.07 | | |

IList (IList<T>) luo välittömästi pysyvän datan muistiin, joka ei toteuta "viivästettyä suoritusta", ja jos ladattuun entiteettiin liittyy entiteettejä, sitä ei ladata (ei heti eikä laiskasti).

IQeurable <T>ei luo välittömästi pysyvää dataa muistiin, vaan lataa dataa muistiin vain, jos se kuljetaan läpi (esim. forreachin kautta), muunnetaan listaksi jne., ja voi saavuttaa "viivästetyn suorituksen"; jos ladatulla yksiköllä on assosiaatioita, tämä entiteetti voidaan ladata seuraavalla käyttökerralla.

Katso seuraavaa koodia:
//IList的情况
IList-käyttäjät = resoluutio. ToList(); Käyttäjät on ladattu muistiin, mutta kunkin käyttäjän liittyvä entiteetti (UserInfos) ei ole
                       on ladattu, joten seuraava koodirivi ei mene sujuvasti läpi
var ss = käyttäjät. missä(p => p.UserInfos.ID != 3); Virhe raportoidaan tässä, koska P:n UserInfos-entiteettiä ei voida ladata

IQuerablen tilanne
IQueryable-käyttäjät = resoluutio. AsQueryable(); käyttäjiä ei ladata heti, ja siihen liittyvä entiteetti voidaan saada "laiskan latauksen" avulla.
                                   Selkis
var ss = käyttäjät. missä(p => p.UserInfos.ID != 3); Vastaava SS saatiin menestyksekkäästi täällä




Edellinen:.net kehittää WeChat-kehitystä saadakseen käyttäjätietoja ja skannataakseen toimintoja [lähdekoodin avulla]
Seuraava:Pyydä Alipay-tilausvalvontaa discuzin käytöstä, @小渣渣
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com