Hier ist meine Einstellung zu dem Versuch, die Lösung besser sichtbar zu machen.
Das Problem ist höchstwahrscheinlich die Verwendung von AddRazorRuntimeCompilation()
. Genauer gesagt, in der Datei startup.cs fügen Sie wahrscheinlich eine Razor-Laufzeitkompilierung wie folgt hinzu:
IMvcBuilder builder = services.AddControllersWithViews()
.AddRazorRuntimeCompilation();
und um dies zu unterstützen, hat Ihr Webprojekt wahrscheinlich einen Verweis auf Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation
Dieses Nuget-Paket ist davon abhängig, Microsoft.CodeAnalysis
dass all diese unerwünschten Ausgaben im Veröffentlichungsordner erzeugt werden.
Das Update besteht darin, die Projektdatei zu bearbeiten und die Abhängigkeit wie folgt vom Debug-Modus abhängig zu machen:
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation"
Version="3.1.0" Condition="'$(Configuration)' == 'Debug'" />
</ItemGroup>
und dann in der Datei startup.cs bedingt AddRazorRuntimeCompilation()
wie folgt aufrufen :
IMvcBuilder builder = services.AddControllersWithViews();
#if DEBUG
if (Env.IsDevelopment()) {
builder.AddRazorRuntimeCompilation();
}
#endif
Dies führt dazu, dass alle diese Microsoft.CodeAnalysis
Bibliotheken nur beim Kompilieren im Debug-Modus nicht verfügbar sind. Wenn Sie jetzt im Freigabemodus veröffentlichen, sind sie nicht Teil der Ausgabe.