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

Näkymä: 20690|Vastaus: 1

[Lähde] Autofac-instanssimenetelmän yhteenveto

[Kopioi linkki]
Julkaistu 5.1.2018 21.25.48 | | |

1、InstancePerDependency

Luo uusi yksilöllinen instanssi jokaiselle riippuvuudelle tai kutsulle. Tämä on myös oletustapa luoda instansseja.

Virallinen dokumentaatio selittää: Määritä komponentti niin, että jokainen riippuva komponentti tai kutsu Resolve():lle saa uuden, ainutlaatuisen instanssin (oletus).



2、InstancePerLifetimeScope

Elinkaaren domainissa jokainen riippuvuus tai kutsu luo yhden jaetun instanssin, ja jokaiselle eri elinkaaren domainille instanssi on ainutlaatuinen eikä jaettu.

Virallinen dokumentaatio selittää: Määritä komponentti niin, että jokainen riippuvainen komponentti tai kutsu Resolve():lle yhden ILifetimeScope:n sisällä saa saman, jaetun instansin. Riippuvaiset komponentit eri elinkaarissa saavat erilaisia instansseja.



3、InstancePerMatchingLifetimeScope

Tunnistetussa elinkaaren domainissa jokainen riippuvuus tai kutsu luo yhden jaetun instanssin. Vanhemman domainin instansseja voidaan jakaa tunnistetun elinkaaren domainin lapsiidentiteettidomainissa. Jos koko perintöhierarkiassa ei löydy tunnistettua elinkaaren domainia, heitetään poikkeus: DependencyResolutionException.

Virallinen dokumentaatio selittää: Määritä komponentti niin, että jokainen riippuva komponentti tai kutsu Resolve():lle ILifetimeScope-tiedostossa, joka on merkitty millä tahansa annetuista tunnisteista, saa saman, jaetun instanssin. Riippuvat komponentit elinikäisissä skooppeissa, jotka ovat merkityn scopen lapsia, jakavat vanhemman instanssin. Jos hierarkiasta ei löydy asianmukaisesti merkittyä laajuutta, DependencyResolutionException heitetään mukaan.



4、InstancePerOwned

Instanssin elinkaaren aikana, jonka omistaa instanssi elinkaaren domainissa, jokainen riippuvainen komponentti tai kutsu Resolve()-metodiin luo yhden jaetun instansin, ja lapsielinkaaren domaini jakaa instanssit vanhemman elinkaaren domainissa. Jos perintöhierarkiasta ei löydy sopivaa elinkaaren domainia, jossa olisi lapsiinstansseja, heitetään poikkeus: DependencyResolutionException.

Virallinen dokumentaatio selittää: Määritä komponentti niin, että jokainen riippuva komponentti tai kutsu Resolve():lle ILifetimeScope-järjestelmässä, jonka on luonut omistettu instanssi, saa saman, jaetun instansin. Riippuvat komponentit elinikäisissä mittakaavoissa, jotka ovat omistetun instanssin laajuuden lapsia, jakavat vanhemman instanssin. Jos hierarkiasta ei löydy sopivaa omistettua instanssialuetta, heitetään DependencyResolutionException.



5、SingleInstance

Joka kerta kun luotat komponentista tai kutsut Resolve()-metodia, saat saman jaetun instanssin. Itse asiassa kyseessä on singleton-malli.

Virallinen dokumentaatio selittää: Määritä komponentti niin, että jokainen riippuva komponentti tai kutsu Resolve():lle saa saman, jaetun instanssin.



6、InstancePerHttpRequest



Http-pyynnön yhteydessä jaa komponentin instanssi. Saatavilla vain asp.net MVC-kehitykseen.
Virallinen dokumentaatio selittää: Jaa yksi komponentin instanssi yhden HTTP-pyynnön yhteydessä.
Virallinen dokumentaatiolinkki: http://autofaccn.readthedocs.io/en/latest/lifetime/instance-scope.html




Edellinen:asp.net Hanki sivustohakemistotiedosto tyhjä
Seuraava:GeckoFx Firefoxin ytimen korvaus, järjestelmän ponnahdusikkunan varoitus 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