Konfigurieren des Trimmers für ASP.NET Core Blazor

Hinweis

Dies ist nicht die neueste Version dieses Artikels. Informationen zum aktuellen Release finden Sie in der .NET 8-Version dieses Artikels.

Wichtig

Diese Informationen beziehen sich auf ein Vorabversionsprodukt, das vor der kommerziellen Freigabe möglicherweise noch wesentlichen Änderungen unterliegt. Microsoft gibt keine Garantie, weder ausdrücklich noch impliziert, hinsichtlich der hier bereitgestellten Informationen.

Informationen zum aktuellen Release finden Sie in der .NET 8-Version dieses Artikels.

In diesem Artikel wird erläutert, wie Sie den IL-Trimmer (Intermediate Language, Zwischensprache) beim Erstellen einer Blazor-App steuern.

Blazor WebAssembly führt eine IL-Kürzung (Intermediate Language, Zwischensprache) aus, um die Größe der veröffentlichten Ausgabe zu verringern. Standardmäßig erfolgt die Kürzung beim Veröffentlichen einer App.

Das Kürzen kann nachteilige Auswirkungen auf die veröffentlichte App haben. In Apps, die Reflexion verwenden, kann der IL-Trimmer oft nicht die erforderlichen Typen für die Laufzeitreflexion bestimmen und kürzen. Beispielsweise können komplexe Frameworktypen für JS-Interoperabilität wie KeyValuePair standardmäßig gekürzt werden und zur Laufzeit für JS-Interoperabilitätsaufrufe nicht verfügbar sein. In diesen Fällen wird empfohlen, stattdessen eigene benutzerdefinierte Typen zu erstellen. Der IL-Trimmer kann auch nicht auf das dynamische Verhalten einer App zur Laufzeit reagieren. Wenn Sie sicherstellen möchten, dass die gekürzte App nach der Bereitstellung ordnungsgemäß funktioniert, testen Sie während der Entwicklung regelmäßig die veröffentlichte Ausgabe.

Informationen zum Konfigurieren des IL-Trimmers finden Sie im Artikel Kürzungsoptionen in der Dokumentation zu .NET-Grundlagen, die zudem Leitlinien zu folgenden Themen enthält:

  • Deaktivieren der Kürzung für die gesamte App mit der Eigenschaft <PublishTrimmed> in der Projektdatei
  • Steuern, wie aggressiv nicht verwendete IL vom IL-Trimmer verworfen wird
  • Verhindern, dass der IL-Trimmer bestimmte Assemblys kürzt
  • „Root“-Assemblys (Stammassemblys) für die Kürzung
  • Oberflächenwarnungen für reflektierte Typen, indem die <SuppressTrimAnalysisWarnings>-Eigenschaft in der Projektdatei auf false festgelegt wird.
  • Steuern der Symbolkürzung und Debuggerunterstützung
  • Festlegen von IL-Trimmerfeatures für Bibliotheksfeatures des Trimmingframeworks

Zusätzliche Ressourcen