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

Näkymä: 26892|Vastaus: 0

[.NET Core] ASP.NET Core käyttää Autofacia IOC-injektion toteuttamiseen

[Kopioi linkki]
Julkaistu 7.5.2019 16.32.23 | | | |
ASP.NET Ytimen riippuvuuden injektio käyttää mukana tulevaa IOC-säiliötä
https://www.itsvse.com/thread-7562-1-1.html
(Lähde: Architect_Programmer)

ASP.NET Core käyttää Autofacia IOC-injektion toteuttamiseen
https://www.itsvse.com/thread-7563-1-1.html
(Lähde: Architect_Programmer)

ASP.NET Core käyttää Autofacia toteuttaakseen AOP:n sieppauksen
https://www.itsvse.com/thread-7566-1-1.html
(Lähde: Architect_Programmer)

IOC-konttiin, joka tulee ASP.NET Core, on kevyt, eikä siinä ole paljon toimintoja, vaan vain perustoimintoja.

Tässä artikkelissa käytetään Autofacia selittämään sekä konstruktoreita että attribuutin injektiota.

Autofac on mahtava IoC-kontti Microsoft .NET 4.5:lle, Silverlight 5:lle, Windows Store -sovelluksille ja Windows Phone 8 -sovelluksille. Se pystyy hallitsemaan luokkien välisiä riippuvuuksia siten, että sovellusta voidaan helposti muokata skaalojen ja monimutkaisuuden kasvaessa. Toteuta .

Projektin .NET Core -versio on: 2.1.301

Asenna Autofac.Extensions.DependencyInjection

Asenna nugetin kautta seuraavalla komennolla:



Kirjoitimme satunnaisesti 3 rajapintaa ja 3 toteutusluokkaa seuraavasti:



Ohjainkonstruktorin injektio

Ensiksi muokataan ConfigureServices-koodia käynnistyksessä seuraavasti:

Huomautus: ConfigureServicesin palautusarvo on muutettu IServiceProvideriksi.

Ohjainkoodi:

Johda projekti alla esitetyllä tavalla:



Controller Autofac -attribuutin injektio

Muokkaa ConfigureServices-metodia käynnistyksessä seuraavasti:

Ohjainkoodi:

Johda projekti alla esitetyllä tavalla:



Keskeiset huomionarvoiset:

  • palveluksia. AddMvc(). SetCompatibilityVersion(CompatibilityVersion.Version_2_1).AddControllersAsServices();
  • JulkinenITestService1 _testService1 { get; setti; }


Koska asetan palvelurajapinnan yksityiseksi alussa, injektio on aina nolla.

Varat:Hyperlinkin kirjautuminen on näkyvissä.




Edellinen:ASP.NET Ytimen riippuvuuden injektio käyttää mukana tulevaa IOC-säiliötä
Seuraava:ASP.NET Core ILogger Log Usage Tutorial
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