Configurare Trimmer per ASP.NET Core Blazor

Nota

Questa non è la versione più recente di questo articolo. Per la versione corrente, vedere la versione .NET 8 di questo articolo.

Avviso

Questa versione di ASP.NET Core non è più supportata. Per altre informazioni, vedere Criteri di supporto di .NET e .NET Core. Per la versione corrente, vedere la versione .NET 8 di questo articolo.

Importante

Queste informazioni si riferiscono a un prodotto non definitive che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.

Per la versione corrente, vedere la versione .NET 8 di questo articolo.

Questo articolo illustra come controllare il trimmer intermedio (IL) durante la compilazione di un'app Blazor .

Blazor WebAssembly esegue il taglio del linguaggio intermedio (IL) per ridurre le dimensioni dell'output pubblicato. Il trimming si verifica durante la pubblicazione di un'app.

Il trimming può avere effetti negativi per l'app pubblicata. Nelle app che usano la reflection, il trimmer IL spesso non può determinare i tipi necessari per la reflection di runtime e eliminarli. Ad esempio, i tipi di framework complessi per JS l'interoperabilità, ad KeyValuePairesempio , potrebbero essere eliminati e non disponibili in fase di esecuzione per JS le chiamate di interoperabilità. In questi casi, è consigliabile creare invece tipi personalizzati. Anche il trimmer IL non è in grado di reagire al comportamento dinamico di un'app in fase di esecuzione. Per assicurarsi che l'app tagliata funzioni correttamente dopo la distribuzione, testare frequentemente l'output pubblicato durante lo sviluppo.

Impostazione

Per configurare il trimmer IL, vedere l'articolo Opzioni trimming nella documentazione di .NET Fundamentals, che include indicazioni sugli argomenti seguenti:

  • Disabilitare il taglio per l'intera app con la <PublishTrimmed> proprietà nel file di progetto.
  • Controllare in che modo il servizio il non usato viene rimosso in modo aggressivo dal trimmer IL.
  • Arrestare il trimmer IL per tagliare assembly specifici.
  • Assembly "radice" per il taglio.
  • Avvisi di superficie per i tipi riflessi impostando la <SuppressTrimAnalysisWarnings> proprietà su false nel file di progetto.
  • Controllo del taglio dei simboli e supporto del debugger.
  • Impostare le funzionalità di Trimmer IL per le funzionalità della libreria del framework di taglio.

Granularità del trimmer predefinita

La granularità predefinita del trimmer per Blazor le app è partial. Per tagliare tutti gli assembly, modificare la granularità in full nel file di progetto dell'app:

<ItemGroup>
  <TrimMode>full</TrimMode>
</ItemGroup>

Per altre informazioni, vedere Opzioni di trimming (documentazione di .NET).

Risorse aggiuntive