Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 18686|Răspunde: 0

[Comunicare] Cursul de startup este explicat în detaliu

[Copiază linkul]
Postat pe 11.02.2019 19:48:46 | | | |
ASP.NET Analiza principiilor de funcționare de bază: Startup
Clasa de pornire
1. Constructor de start-up
2、ConfigureServices
3. Metoda de configurare
Clasa de pornire

Boot Class conține două metode importante: metoda Configure este folosită pentru a gestiona fiecare cerere HTTP, cum ar fi Middleware-ul menționat mai târziu, care este configurat în metoda de configurare. Metoda ConfigureServices este apelată înaintea metodei Configure, care este o metodă opțională ce poate fi folosită în interfața de injectare a dependențelor configureServices sau într-un cadru global, cum ar fi EntityFramework, MVC etc.Ordinea de execuție a clasei de pornire: construct -> configureServices->configure

1. Constructor de start-up

Implementarea principală a unor configurații este următoarea:

  • IHostingEnvironment:Proprietăți speciale pentru accesarea aplicației, cum ar fi:Application Nume,aplicațieVersiune。 TrecereaIHostingMediuProprietățile sub obiecte pot fi configurate în construcție. De exemplu, obține calea rădăcină curentă, găsește adresa fișierului json de configurare, apoi inițializează fișierul de configurare în ConfigurationBuilder și, în final, obține fișierul de configurare prin metoda GetSection(). Lista codurilor este următoarea:Fișierul de configurare din directorul rădăcină este următorul:ILoggerFactory: 提供创建日志的接口,可以选用已经实现接口的类或自行实现此接口,下面代码使用最简单的控制台作为日志输出。
  • 2. ConfigureServices implementează în principal configurația injecției de dependență (DI), iar parametrii metodei sunt următorii:
    IServiceCollection: Întregul ASP.NET Core vine implicit cu injecția de dependență (DI), IServiceCollection este containerul pentru injectarea dependențelor, mai întâi creează o clasă (Foo) și o interfață (IFoo), lista de coduri este următoarea:Injectează interfețe și implementări în containere în ConfigureServicesDacă vrei să folosești metoda GetFoo() a IFoo pentru a o gestiona după fiecare cerere Http, poți înregistra funcția în metoda Configurare, iar deoarece procesul de înregistrare folosește injecția de dependență (DI), poți scoate <IFoo>direct obiectul IFoo din container prin metoda generică RequestServices.GetRequiredService().Pe lângă propriile interfețe, suportă și adăugarea mai multor metode de injecție prin metode de extensie, cum ar fi EntityFramework și framework-urile mvc.3. Metoda de configurare

    În principal configurația pipeline-ului de procesare HTTP și unele configurații de sistem, parametrii sunt următorii:

    • IApplicationBuilder:Folosite pentru a construi pipeline-uri de cereri pentru aplicații. Trece metoda de procesare a conductelor prin metoda de execuție din IApplicationBuilder. Aceasta este cea mai comună metodă, iar pentru aplicații într-un mediu real, practic necesită verificarea permisiunilor, cross-domain, gestionarea excepțiilor etc. Codul următor apelează metoda IApplicationBuilder.Run pentru a înregistra handler-ul. Interceptează fiecare cerere HTTP și scoate Hello World.IHostingEnvironment: 同构造参数ILoggerFactory: 同构造参数






Precedent:Versiunea chineză a randărilor 3ds Max pentru realizarea înregistrărilor din clasă
Următor:Învățarea profundă Grokking
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com