Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 46998|Svare: 2

[Kilde] .NET får ikke den fullstendige referansesamlingen

[Kopier lenke]
Publisert på 22.08.2020 10:41:02 | | | |
Bruke. .NET for å hente den lastede assemblyen er ufullstendig, selv om vi refererer til andre biblioteker, men uten kall kan den ikke hentes i den lastede assemblyen, denne artikkelen deler for å hente den komplette assembly-assemblyen i WinForm og ASP.NET.

Introduksjon

Bruke. .NET for å hente den lastede assemblyen er ufullstendig, selv om vi refererer til andre biblioteker, men uten kall kan den ikke hentes i den lastede assemblyen, denne artikkelen deler for å hente den komplette assembly-assemblyen i WinForm og ASP.NET.

ASP.NET (umålt)

.NET-rammeverket utsetter lasting av assemblies inn i det nåværende AppDomain til de trengs. For eksempel, hvis du kun kaller et tredjepartsbibliotek fra SomeMethod(), vil tredjeparts-DLL-en vanligvis ikke bli lastet inn før første kjøring av SomeMethod().

AppDomain.GetAssemblies() gir deg alle assemblyene som er lastet inn i den nåværende AppDomain. BuildManager.GetReferencedAssemblies() returnerer en liste over alle assemblies referert fra Web.config og andre lokasjoner, og laster disse assemblies inn i det nåværende AppDomain.

Kode:



WinForm

Start med å bruke koden nedenfor for å få den lastede samlingen.



Antallet oppnådde forsamlingsforsamlinger er 12, som vist i følgende figur:



Når vi ikke kaller metodene til andre biblioteker, laster ikke hovedapplikasjonen sine dll-er, sannsynligvis for å spare ytelseskostnader, så første gang vi kaller metodene til andre biblioteker, kan det gå litt tregere.

Bruk den modifiserte koden, som følger:





Antallet assembly-assemblies som oppnås er 117, og prinsippet er å få dll-filen under applikasjonskatalogen og laste den inn.

I dette tilfellet, når AppDomain.CurrentDomain.GetAssemblies(). ToList()-metoden kan du få hele samlingen, som kan være mer enn 117.

Få tak i den nåværende forsamlingen





Foregående:.NET bruker Redis-cache for utløpsvarsler
Neste:Profesjonell administrasjonsverktøy for ServiceNow sky-IT-virksomhet
 Vert| Publisert på 25.12.2020 15:50:46 |
Publisert på 22.09.2021 20:39:35 |
Lær å lære...
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com