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

Pohľad: 2964|Odpoveď: 0

[Zdroj] ASP.NET Základné (dvadsaťpäť) závislosti injekčujú Lazy, lazy lazy inicializáciu

[Kopírovať odkaz]
Zverejnené 10. 10. 2023 21:14:31 | | | |
Požiadavky: Pridajte služby ASP.NET Core, injektujte služby cez konštruktory a chcete oneskoriť inicializáciu implementačnej triedy (rôzne logické spracovanie podľa HTTP kontextových požiadaviek) a myslite na použitie<T> Lazy pre lazy inicializáciu.

Revízia:

Ako lenivosť v C# chráni vlákna
https://www.itsvse.com/thread-10621-1-1.html

Optimalizácia výkonu v C#: Lazy inicializuje lazy s <T>oneskorením
https://www.itsvse.com/thread-7700-1-1.html
Injektujte priamo do rozhrania

Konštruktor je priamo vložený do rozhrania a kód je nasledovný:

Poradie vykonania je nasledovné:



Môžete vidieť nasledujúce poradie vykonávania: IA implementačná trieda -> HomeController konzola -> indexová metóda

Inicializovať s Lazy delay

Ak konštruktor kontroléra zmení IA na Lazy<IA>, chyba bude vyzerať takto:

InvalidOperationException: Unable to resolve service for type 'System.Lazy`1[WebApplication6.IA]' while attempting to activate 'WebApplication6.Controllers.HomeController'.
Chyba je spôsobená tým, že sme neboli zaregistrovaní pre služby súvisiace s Lazy, potrebujeme zaregistrovať generickú službu Lazy<> kód je nasledovný:

Pridať do služby:

Poradie vykonania je nasledovné:



Môžeš vidieť poradie vykonávania: HomeController console -> Index method -> IA implementačná trieda, môžeš ju vidieťInicializácia oneskorenia rozhrania IApri vyvolaní inštancuje implementačný objekt IA.

(Koniec)





Predchádzajúci:CIDR: Prečítajte si popis adresy CIDR v jednom článku
Budúci:Front-end ukladá balík localForage pre IndexedDB
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