Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 26892|Svar: 0

[.NET Core] ASP.NET Core bruger Autofac til at implementere IOC-injektion

[Kopier link]
Opslået på 07/05/2019 16.32.23 | | | |
ASP.NET Core-afhængighedsinjektion bruger IOC-containeren, der følger med
https://www.itsvse.com/thread-7562-1-1.html
(Kilde: Architect_Programmer)

ASP.NET Core bruger Autofac til at implementere IOC-injektion
https://www.itsvse.com/thread-7563-1-1.html
(Kilde: Architect_Programmer)

ASP.NET Core bruger Autofac til at implementere AOP-opsnapning
https://www.itsvse.com/thread-7566-1-1.html
(Kilde: Architect_Programmer)

IOC-containeren, der følger med ASP.NET Core, er letvægts, og der er ikke mange funktioner, kun basale funktioner.

Denne artikel vil bruge Autofac til at forklare både konstruktører og attributinjektion.

Autofac er en fantastisk IoC-container til Microsoft .NET 4.5, Silverlight 5, Windows Store-apps og Windows Phone 8-apps. Den kan håndtere afhængigheder mellem klasser, så applikationen nemt kan ændres, efterhånden som skalaen og kompleksiteten vokser. Implementér .

.NET Core-versionen af projektet er: 2.1.301

Installer Autofac.Extensions.DependencyInjection

Installer via nuget med følgende kommando:



Vi skrev 3 interfaces og 3 implementeringsklasser casual, som følger:



Controllerkonstruktør-injektion

Lad os først ændre ConfigureServices-koden i Startup som følger:

Bemærk: Returværdien for ConfigureServices er ændret til IServiceProvider.

Controller-kode:

Kør projektet som vist nedenfor:



Controller Autofac-attributinjektion

Ændr ConfigureServices-metoden i Startup som følger:

Controller-kode:

Kør projektet som vist nedenfor:



Vigtige punkter at bemærke:

  • tjenester. AddMvc(). SetCompatibilityVersion(CompatibilityVersion.Version_2_1).AddControllersAsServices();
  • OffentligITestService1 _testService1 { get; sat; }


Fordi jeg satte servicegrænsefladen til privat i starten, er injektionen altid null.

Ressourcer:Hyperlink-login er synlig.




Tidligere:ASP.NET Core-afhængighedsinjektion bruger IOC-containeren, der følger med
Næste:ASP.NET Core ILogger logbrugsvejledning
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com