Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 26892|Odpoveď: 0

[.NET Core] ASP.NET Core používa Autofac na implementáciu injekcie IOC

[Kopírovať odkaz]
Zverejnené 7. 5. 2019 16:32:23 | | | |
ASP.NET Core dependency injection využíva IOC kontajner, ktorý je súčasťou
https://www.itsvse.com/thread-7562-1-1.html
(Zdroj: Architect_Programmer)

ASP.NET Core používa Autofac na implementáciu injekcie IOC
https://www.itsvse.com/thread-7563-1-1.html
(Zdroj: Architect_Programmer)

ASP.NET Core používa Autofac na implementáciu AOP interception
https://www.itsvse.com/thread-7566-1-1.html
(Zdroj: Architect_Programmer)

IOC kontajner, ktorý je súčasťou ASP.NET Core, je ľahký a nemá veľa funkcií, len základné funkcie.

Tento článok použije Autofac na vysvetlenie konštruktorov aj injekcie atribútov.

Autofac je skvelý IoC kontajner pre Microsoft .NET 4.5, Silverlight 5, aplikácie Windows Store a Windows Phone 8. Dokáže spravovať závislosti medzi triedami tak, aby bolo možné aplikáciu ľahko upravovať podľa rastúceho rozsahu a zložitosti. Implementujte .

.NET Core verzia projektu je: 2.1.301

Install Autofac.Extensions.DependencyInjection

Inštalujte cez nuget pomocou nasledujúceho príkazu:



Neformálne sme napísali 3 rozhrania a 3 implementačné triedy, nasledovne:



Injekcia konštruktorov regulátorov

Najprv upravme kód ConfigureServices v Startup nasledovne:

Poznámka: Návratová hodnota ConfigureServices bola zmenená na IServiceProvider.

Kód ovládača:

Spustite projekt tak, ako je uvedené nižšie:



Controller Autofac injekcia atribútov

Modifikujte metódu ConfigureServices v Startup nasledovne:

Kód ovládača:

Spustite projekt tak, ako je uvedené nižšie:



Kľúčové body, ktoré treba poznamenať:

  • služby. AddMvc(). SetCompatibilityVersion(CompatibilityVersion.Version_2_1).AddControllersAsServices();
  • VerejnýITestService1 _testService1 { get; set; }


Keďže som na začiatku nastavil servisné rozhranie na súkromné, injekcia je vždy nulová.

Zdroje:Prihlásenie na hypertextový odkaz je viditeľné.




Predchádzajúci:ASP.NET Core dependency injection využíva IOC kontajner, ktorý je súčasťou
Budúci:ASP.NET Základný tutoriál používania logov ILoggera
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com