Evitar o destino de formato herdado no 'SuppressMessageAttribute' global (IDE0077)

Propriedade Valor
ID da regra IDE0077
Título Evitar o destino de formato herdado no SuppressMessageAttribute global
Categoria CodeQuality
Subcategoria Regras diversas
Linguagens aplicáveis C# e Visual Basic

Visão geral

Essa regra sinaliza suppressMessageAttributes globais que especificam Target usando o formato de cadeia de caracteres de destino FxCop herdado. O uso do formato Target herdado é conhecido por ter problemas de desempenho e deve ser evitado. Para saber mais, confira dotnet/roslyn issue 44362.

O formato recomendado para Target é o formato ID da documentação. Para obter informações sobre IDs de documentação, consulte o formato de ID da Documentação.

Dica

O Visual Studio 2019 fornece uma correção de código para alterar automaticamente o Target do atributo para o formato recomendado.

Opções

Essa regra não tem opções de estilo de código associadas.

Exemplo

// IDE0077: Legacy format target 'N.C.#F'
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "member", Target = "N.C.#F")]

// Fixed code
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "member", Target = "~F:N.C.F")]

namespace N
{
    class C
    {
        public int F;
    }
}

Suprimir um aviso

Se você quiser suprimir apenas uma violação, adicione diretivas de pré-processador ao arquivo de origem para desabilitar e, em seguida, reabilite a regra.

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

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.IDE0077.severity = none

Para desabilitar toda essa categoria de regras, defina a gravidade da categoria como none no arquivo de configuração.

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-CodeQuality.severity = none

Para obter mais informações, confira Como suprimir avisos de análise de código.

Confira também