Dela via


Sammansättningsrelaterade API-beteendeändringar för publiceringsformat med en fil

Flera API:er som är relaterade till en sammansättnings filplats har beteendeändringar när de anropas i ett publiceringsformat med en fil.

Ändra beskrivning

I enfilspublicering för .NET 5 och senare versioner läses paketerade sammansättningar in från minnet i stället för extraheras till disk. För enfilspublicerade appar innebär det att vissa platsrelaterade API:er returnerar olika värden på .NET 5 och senare än i tidigare versioner av .NET. Ändringarna är följande:

API Tidigare versioner .NET 5 och senare
Assembly.Location Returnerar extraherad DLL-filsökväg Returnerar tom sträng för paketerade sammansättningar
Assembly.CodeBase Returnerar extraherad DLL-filsökväg Genererar undantag för paketerade sammansättningar
Assembly.GetFile(String) Returnerar null för paketerade sammansättningar Genererar undantag för paketerade sammansättningar
Environment.GetCommandLineArgs()[0] Värdet är namnet på startpunktens DLL Värdet är namnet på den körbara värden
AppContext.BaseDirectory Värdet är den temporära extraheringskatalogen Värdet är den katalog som innehåller den körbara värden

Version introducerad

5,0

Undvik beroenden på filplatsen för sammansättningar när du publicerar som en enda fil.

Berörda API:er