Condividi tramite


CA1824: Contrassegnare gli assembly con NeutralResourcesLanguageAttribute

Proprietà valore
ID regola CA1824
Title Contrassegnare gli assembly con NeutralResourcesLanguageAttribute
Categoria Prestazioni
La correzione causa un'interruzione o meno Non rompente
Abilitato per impostazione predefinita in .NET 10 Come suggerimento
Linguaggi applicabili C# e Visual Basic

Causa

Un assembly contiene una risorsa basata su ResX ma non ha l'oggetto System.Resources.NeutralResourcesLanguageAttribute applicato.

Descrizione regola

L'attributo NeutralResourcesLanguageAttribute informa il gestore risorse delle impostazioni cultura predefinite di un'app. Se le risorse della cultura predefinita sono incorporate nell'assembly principale dell'app e ResourceManager deve recuperare le risorse che appartengono alla stessa cultura della cultura predefinita, ResourceManager usa automaticamente le risorse contenute nell'assembly principale anziché cercare un assembly satellite. Questo ignora la normale sonda di assembly, migliora le prestazioni di ricerca per la prima risorsa caricata e può ridurre il set di lavoro.

Suggerimento

Consultare Creare un pacchetto e distribuire le risorse per il processo che viene utilizzato ResourceManager per analizzare i file di risorse.

Correggere le violazioni

Per correggere una violazione di questa regola, aggiungere l'attributo all'assembly e specificare la lingua delle risorse della cultura neutrale.

Per specificare la lingua neutra per le risorse

  1. In Esplora soluzioni fare clic con il pulsante destro del mouse sul progetto e quindi scegliere Proprietà.

  2. Selezionare la scheda Pacchetto.

    Nota

    Se il progetto è un progetto .NET Framework, selezionare la scheda Applicazione e quindi selezionare Informazioni sull'assembly.

  3. Selezionare la lingua dall'elenco a discesa Lingua neutrale o Lingua indipendente dall'assembly.

  4. Seleziona OK.

Quando eliminare gli avvisi

È consentito eliminare un avviso da questa regola. Tuttavia, le prestazioni di avvio potrebbero peggiorare. Per eliminare questo avviso, aggiungere dotnet_diagnostic.CA1824.severity = none al file .globalconfig o .editorconfig.

Eliminare un avviso

Se si vuole eliminare una singola violazione, aggiungere direttive del preprocessore al file di origine per disabilitare e quindi riabilitare la regola.

#pragma warning disable CA1824
// The code that's violating the rule is on this line.
#pragma warning restore CA1824

Per disabilitare la regola per un file, una cartella o un progetto, impostarne la gravità none su nel file di configurazione.

[*.{cs,vb}]
dotnet_diagnostic.CA1824.severity = none

Per altre informazioni, vedere Come eliminare gli avvisi di analisi del codice.

Vedi anche