CA1824: Marque assemblies com NeutralResourcesLanguageAttribute
Property | Valor |
---|---|
ID da regra | CA1824 |
Título | Marque assemblies com NeutralResourcesLanguageAttribute |
Categoria | Desempenho |
Correção interruptiva ou sem interrupção | Sem interrupção |
Habilitado por padrão no .NET 9 | Como sugestão |
Causa
Um assembly contém um recurso baseado em ResX, mas não tem o System.Resources.NeutralResourcesLanguageAttribute aplicado a ele.
Descrição da regra
O atributo NeutralResourcesLanguageAttribute informa o gerenciador de recursos da cultura padrão de um aplicativo. Se os recursos da cultura padrão estiverem inseridos no assembly principal do aplicativo e ResourceManager precisar recuperar recursos que pertencem à mesma cultura que a cultura padrão, ResourceManager usará automaticamente os recursos localizados no assembly principal em vez de procurar um assembly satélite. Isso contorna a investigação de assembly usual, melhora o desempenho da pesquisa para o primeiro recurso que você carrega e pode reduzir o conjunto de trabalho.
Dica
Confira Empacotar e implantar recursos para o processo que ResourceManager usa para investigar arquivos de recursos.
Corrigir violações
Para corrigir uma violação dessa regra, adicione o atributo ao assembly e especifique o idioma dos recursos da cultura neutra.
Para especificar a linguagem neutra para recursos
No Gerenciador de Soluções, clique com o botão direito do mouse no projeto e, em seguida, selecione Propriedades.
Selecione a guia Pacote.
Observação
Se o projeto for um projeto .NET Framework, selecione a guia Aplicativo e depois selecione Informações do Assembly.
Selecione a linguagem na lista Linguagem neutra ou Linguagem neutra de assembly.
Selecione OK.
Quando suprimir avisos
É permitido suprimir um aviso dessa regra. No entanto, o desempenho da inicialização poderá ser prejudicado. Para suprimir esse aviso, adicione dotnet_diagnostic.CA1824.severity = none
ao arquivo .globalconfig ou .editorconfig.
Suprimir um aviso
Para suprimir apenas uma violação, adicione diretivas de pré-processador ao arquivo de origem a fim de desabilitar e, em seguida, reabilitar a regra.
#pragma warning disable CA1824
// The code that's violating the rule is on this line.
#pragma warning restore CA1824
Para desabilitar a regra em um arquivo, uma pasta ou um projeto, defina a severidade como none
no arquivo de configuração.
[*.{cs,vb}]
dotnet_diagnostic.CA1824.severity = none
Para obter mais informações, confira Como suprimir avisos de análise de código.