Naudojimas. .NET gauti įkeltą rinkinį yra neišsamus, nors mes nurodome kitas bibliotekas, bet be skambučio, jo negalima gauti įkeltame rinkinyje, šiame straipsnyje dalijamasi gauti visą rinkinio rinkinį WinForm ir ASP.NET.
Įvadas
Naudojimas. .NET gauti įkeltą rinkinį yra neišsamus, nors mes nurodome kitas bibliotekas, bet be skambučio, jo negalima gauti įkeltame rinkinyje, šiame straipsnyje dalijamasi gauti visą rinkinio rinkinį WinForm ir ASP.NET.
ASP.NET (neišmatuotas)
.NET Framework atideda rinkinių įkėlimą į dabartinį "AppDomain", kol jų prireiks. Pavyzdžiui, jei iškviečiate tik trečiosios šalies biblioteką iš SomeMethod(), trečiosios šalies DLL paprastai nebus įkeltas iki pirmojo SomeMethod() paleidimo.
AppDomain.GetAssemblies() pateikia visus rinkinius, kurie buvo įkelti į dabartinį AppDomain. BuildManager.GetReferencedAssemblies() pateikia visų rinkinių, nurodytų iš Web.config ir kitų vietų, sąrašą ir įkelia tuos rinkinius į dabartinį AppDomain.
Kodas:
WinForm
Pradėkite naudodami toliau pateiktą kodą, kad gautumėte pakrautą mazgą.
Gautų surinkimo mazgų skaičius yra 12, kaip parodyta šiame paveikslėlyje:
Kai neiškviečiame kitų bibliotekų metodų, pagrindinė programa neįkelia savo DLL, tikriausiai norėdama sutaupyti našumo sąnaudų, todėl pirmą kartą iškviečiant kitų bibliotekų metodus, tai gali būti šiek tiek lėtesnė.
Naudokite modifikuotą kodą taip:
Gautų surinkimo mazgų skaičius yra 117, o principas yra gauti dll programų kataloge ir įkelti.
Tokiu atveju iškviečiant AppDomain.CurrentDomain.GetAssemblies(). ToList() metodu, galite gauti visą surinkimą, kuris gali būti didesnis nei 117.
Gauti dabartinį rinkinį
|