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

Pohľad: 46998|Odpoveď: 2

[Zdroj] .NET nedostáva kompletnú referenčnú assemblerovú zostavu

[Kopírovať odkaz]
Zverejnené 22. 8. 2020 10:41:02 | | | |
Použiť. .NET na získanie načítaného assembleru je neúplný, hoci odkazujeme na iné knižnice, ale bez volania ho nie je možné získať v načítanom assemble, tento článok zdieľa, ako získať kompletný assembly assembly vo WinForm a ASP.NET.

Zavedenie

Použiť. .NET na získanie načítaného assembleru je neúplný, hoci odkazujeme na iné knižnice, ale bez volania ho nie je možné získať v načítanom assemble, tento článok zdieľa, ako získať kompletný assembly assembly vo WinForm a ASP.NET.

ASP.NET (nemerané)

.NET Framework odkladá načítanie assemblerov do aktuálneho AppDomain, kým nie sú potrebné. Napríklad, ak voláte len knižnicu tretej strany z SomeMethod(), DLL tretej strany sa zvyčajne načíta až po prvom spustení SomeMethod().

AppDomain.GetAssemblies() vám zobrazí všetky assemblies, ktoré boli načítané do aktuálneho AppDomain. BuildManager.GetReferencedAssemblies() vráti zoznam všetkých assemblies referencovaných z Web.config a iných miest a načíta tieto assemblies do aktuálnej AppDomain.

Kód:



WinForm

Začnite použitím nižšie uvedeného kódu na získanie naloženej zostavy.



Počet získaných zhromaždení je 12, ako je znázornené na nasledujúcom obrázku:



Keď nevoláme metódy iných knižníc, hlavná aplikácia nenačítava svoje dll, pravdepodobne kvôli úspore výkonu, takže prvýkrát, keď voláme metódy iných knižníc, môže to byť o niečo pomalšie.

Použite upravený kód, nasledovne:





Počet získaných assemblerov je 117 a princíp je dostať dll do adresára aplikácií a načítať ho.

V tomto prípade, pri volaní AppDomain.CurrentDomain.GetAssemblies(). Metódou ToList() môžete získať kompletnú zostavu, ktorá môže byť viac ako 117.

Získajte aktuálnu zostavu





Predchádzajúci:.NET používa Redis cache na oznámenia o expirácii
Budúci:Nástroj na profesionálnu správu pre cloudové IT biznisy ServiceNow
 Prenajímateľ| Zverejnené 25. 12. 2020 15:50:46 |
Zverejnené 22. 9. 2021 20:39:35 |
Nauč sa učiť...
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