Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 20328|Atsakyti: 0

[WebAPI] MVC5 ir webAPI naudojama Autofac priklausomybės injekcija

[Kopijuoti nuorodą]
Paskelbta 2017-11-29 14:35:33 | | | |
Daugelyje knygų minimos tokios sąvokos kaip priklausomybės injekcija ir valdymo inversija, kurios visos yra skirtos laisvai susietiems sluoksniams, komponentams ir klasės tikslams pasiekti.

Įprasta naudoti saugyklos klasę, kad būtų galima atskirti tiesioginį ryšį tarp valdiklio ir modelio. Siekiant atjungti glaudų ryšį tarp saugyklos klasės ir valdiklio, jis paprastai nėra tiesiogiai apibrėžiamas ir instanciuojamas saugyklos klasės, o įterpiamas į nurodytą saugyklą naudojant valdiklio konstravimo metodą.



Populiarūs IoC konteineriai yra: Ninject, Autofac, Unity.

Čia pateikiamas trumpas paaiškinimas, kaip naudoti Autofac injekciją MVC5 ir Webapi2.

1. Naudokite nupkg, kad nurodytumėte Autofac, Autofac.Mvc5 ir Autofac.Webapi2

PM> install-package autofac -versija 3.5.0

PM> install-package autofac.mvc5

PM> install-package autofac.webapi2 (Pastaba: jei savo projekte naudojate webapi2, čia turi būti webapi2, o ne webapi, kitaip vykdymo metu bus rodoma "Perrašyti narį Autofac.Integration.WebApi.AutofacWebApiDependencyResolver.BeginScope()") pažeidė paveldėjimo saugumo taisykles. Perrašyto metodo saugos prieinamumas turi atitikti perrašyto metodo saugų prieinamumą. Neteisingai. )



2. Užregistruokite komponentą.

3. Sukurkite konteinerį vėlesniam naudojimui.

var container=statybininkas. Statyti ();
4. Sukurkite viso gyvenimo aprėptį iš konteinerio.

5. Naudokite šią viso naudojimo aprėptį, kad išanalizuotumėte komponentų egzempliorius.

konfigūracija. DependencyResolver = naujas AutofacWebApiDependencyResolver(konteineris); Norėdami užregistruoti API konteinerį, turite naudoti HttpConfiguration objektą
DependencyResolver.SetResolver(naujas AutofacDependencyResolver(konteineris)); MVC konteinerio registravimas
6. "WebApiConfig" klasės "Register" metode iškvieskite aukščiau pateiktą veiksmo kodą ir perduokite objektą "HttpConfiguration".



Autofac privalumas yra tas, kad jį galima atsieti vienu metu be konfigūracijos; autofac geriau įgyvendina koncepciją "konvencija yra didesnė nei konfigūracija" MVC.





Ankstesnis:asp.net MVC prideda WebAPI valdiklį
Kitą:Kaip įkrauti.
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com