Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 26892|Antwort: 0

[.NET Core] ASP.NET Core verwendet Autofac, um IOC-Injektionen zu implementieren

[Link kopieren]
Veröffentlicht am 07.05.2019 16:32:23 | | | |
ASP.NET Core Dependency Injection verwendet den mitgelieferten IOC-Container
https://www.itsvse.com/thread-7562-1-1.html
(Quelle: Architect_Programmer)

ASP.NET Core verwendet Autofac, um IOC-Injektionen zu implementieren
https://www.itsvse.com/thread-7563-1-1.html
(Quelle: Architect_Programmer)

ASP.NET Core verwendet Autofac, um AOP-Abfang zu implementieren
https://www.itsvse.com/thread-7566-1-1.html
(Quelle: Architect_Programmer)

Der IOC-Container, der mit ASP.NET Core geliefert wird, ist leicht und es gibt nicht viele Funktionen, sondern nur grundlegende Funktionen.

Dieser Artikel wird Autofac verwenden, um sowohl Konstruktoren als auch Attributinjektion zu erklären.

Autofac ist ein großartiger IoC-Container für Microsoft .NET 4.5, Silverlight 5, Windows Store Apps und Windows Phone 8 Apps. Es kann Abhängigkeiten zwischen Klassen verwalten, sodass die Anwendung leicht angepasst werden kann, wenn Skalierung und Komplexität wachsen. Implementiere das .

Die .NET Core-Version des Projekts lautet: 2.1.301

Autofac.Extensions.DependencyInjection installieren

Installieren Sie über nuget mit folgendem Befehl:



Wir haben 3 Schnittstellen und 3 Implementierungsklassen locker geschrieben, wie folgt:



Controller-Konstruktor-Injektion

Zunächst ändern wir den ConfigureServices-Code im Startup wie folgt:

Hinweis: Der Rückgabewert von ConfigureServices wurde auf IServiceProvider geändert.

Controller-Code:

Führen Sie das Projekt wie unten gezeigt durch:



Controller-Autofac-Attributinjektion

Ändern Sie die ConfigureServices-Methode im Startup wie folgt:

Controller-Code:

Führen Sie das Projekt wie unten gezeigt durch:



Wichtige Punkte:

  • Dienstleistungen. AddMvc(). SetCompatibilityVersion(CompatibilityVersion.Version_2_1).AddControllersAsServices();
  • ÖffentlichITestService1 _testService1 { get; Set; }


Da ich die Service-Schnittstelle zu Beginn auf privat gesetzt habe, ist die Injektion immer null.

Betriebsmittel:Der Hyperlink-Login ist sichtbar.




Vorhergehend:ASP.NET Core Dependency Injection verwendet den mitgelieferten IOC-Container
Nächster:ASP.NET Core ILogger Log Usage Tutorial
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com