1、InstancePerDependency
Loo iga sõltuvuse või kõne jaoks uus unikaalne instants. See on ka vaikimisi viis instantside loomiseks.
Ametlik dokumentatsioon selgitab: Seadista komponent nii, et iga sõltuv komponent või kutse Resolve()-le saaks uue, unikaalse instantsi (vaikimisi).
2、InstancePerLifetimeScope
Elutsükli domeenis loob iga sõltuvus või kutse ühe jagatud instantsi ning iga erineva elutsükli domeeni puhul on eksemplar unikaalne ega ole jagatud.
Ametlik dokumentatsioon selgitab: Seadista komponent nii, et iga sõltuv komponent või kõne Resolve() ühes ILifetimeScope'is saaks sama, jagatud instantsi. Sõltuvad komponendid erinevates eluea ulatustes saavad erinevaid instansse.
3、InstancePerMatchingLifetimeScope
Tuvastatud elutsükli domeenis loob iga sõltuvus või kutse ühe jagatud instantsi. Vanemdomeeni instantse saab jagada tuvastatud elutsükli domeeni lapse identiteedidomeenis. Kui kogu pärilikkuse hierarhias ei leita tuvastatud elutsükli domeeni, lisatakse erand: DependencyResolutionException.
Ametlik dokumentatsioon selgitab: Seadista komponent nii, et iga sõltuv komponent või Resolve() kutse ILifetimeScope'is, mis on märgistatud mõne antud sildi väärtusega, saaks sama, jagatud instantsi. Sõltuvad komponendid eluaegsetes ulatustes, mis on märgistatud skoopi lapsed, jagavad vanema instantsi. Kui hierarhias ei leia sobivalt märgistatud ulatust, visatakse DependencyResolutionException.
4、InstancePerOwned
Eksemplari elutsüklis, mille loob elutsükli domeenis omanduses olev instants, loob iga sõltuv komponent või Resolve() meetodi kutse ühe jagatud eksemplari ning lapse elutsükli domeen jagab eksemplari vanemtsükli domeenis. Kui pärimishierarhias ei leita sobivat elutsükli domeeni koos laps-instantsidega, visatakse erand: DependencyResolutionException.
Ametlik dokumentatsioon selgitab: Seadista komponent nii, et iga sõltuv komponent või kõne Resolve()-le ILifetimeScope'i sees, mille on loonud omanduses instant, saab sama, jagatud instantsi. Sõltuvad komponendid eluaegsetes ulatustes, mis on omandis oleva instantsi ulatuse lapsed, jagavad vanema instantsi. Kui hierarhias ei leia sobivat omandis oleva instantsi ulatust, lisatakse DependencyResolutionException.
5、SingleInstance
Iga kord, kui sa sõltud komponendist või kutsud Resolve() meetodit, saad sama jagatud instantsi. Tegelikult on see üksikmudel.
Ametlik dokumentatsioon selgitab: Seadista komponent nii, et iga sõltuv komponent või kõne Resolve()-le saaks sama, jagatud instantsi.
6、InstancePerHttpRequest
Http-päringu kontekstis jagage komponendi eksemplari. Saadaval ainult asp.net MVC arenduseks. Ametlik dokumentatsioon selgitab: Jaga ühe komponendi eksemplari ühe HTTP päringu kontekstis. Ametlik dokumentatsiooni link: http://autofaccn.readthedocs.io/en/latest/lifetime/instance-scope.html
|