See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 2964|Vastuse: 0

[Allikas] ASP.NET Core (kakskümmend viis) sõltuvus süstivad Laisk laisk laisk initsialiseerimine

[Kopeeri link]
Postitatud 10.10.2023 21:14:31 | | | |
Nõuded: Lisa teenused ASP.NET Core, süstida teenuseid konstruktorite kaudu ning soovi viivitada rakendusklassi initsialiseerimist (erinev loogiline töötlemine vastavalt HTTP konteksti päringu infole) ning mõtle Lazy<T> kasutamisele laisa initsialiseerimise jaoks.

Läbivaatamine:

Kuidas Lazy C#-s hoiab niidid turvalisena
https://www.itsvse.com/thread-10621-1-1.html

C# jõudluse optimeerimine: Lazy initsialiseerib Lazy <T>viivitusega
https://www.itsvse.com/thread-7700-1-1.html
Süstige otse liidesesse

Konstruktor süstitakse otse liidese teenusesse ning kood on järgmine:

Täideviimise järjekord on järgmine:



Näed järgmist täitmisjärjekorda: IA rakendusklass -> HomeController konsool -> indeksmeetod

Initsialiseerimine laisa viivitusega

Kui kontrolleri konstruktor muudab IA laisaks<IA>, näeb viga välja selline:

InvalidOperationException: Unable to resolve service for type 'System.Lazy`1[WebApplication6.IA]' while attempting to activate 'WebApplication6.Controllers.HomeController'.
Viga tuleneb sellest, et me pole Lazy-ga seotud teenustele registreerunud, peame registreerima Lazy<> üldise teenuse, kood on järgmine:

Lisa teenindusse:

Täideviimise järjekord on järgmine:



Näed täitmisjärjekorda: HomeController konsool -> Index meetod -> IA rakendusklass, näed sedaIA liidese viivituse initsialiseeriminekäivitab IA rakendusobjekti, kui seda kutsutakse.

(Lõpp)





Eelmine:CIDR: Loe ühes artiklis CIDR aadressi kirjeldust
Järgmine:Esiosa salvestab IndexedDB localForage paketi
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com