Evitar el destino de formato heredado en "SuppressMessageAttribute" global (IDE0077)

Propiedad Valor
Identificador de la regla IDE0077
Título Evitar el destino de formato heredado en SuppressMessageAttribute global
Categoría CodeQuality
Subcategoría Reglas varias
Lenguajes aplicables C# y Visual Basic

Información general

Esta regla marca las instancias de SuppressMessageAttribute globales que especifican Target con del formato de cadena de destino FxCop heredado. Se sabe que el uso del formato heredado Target tiene problemas de rendimiento y se debe evitar. Para obtener más información, consulta la incidencia 44362 de dotnet/roslyn.

El formato recomendado para Target es el de id. de documentación. Para obtener información sobre los id. de documentación, vea Formato de id. de documentación.

Sugerencia

En Visual Studio 2019 se proporciona una corrección de código para cambiar automáticamente el elemento Target del atributo al formato recomendado.

Opciones

Esta regla no tiene opciones de estilo de código asociadas.

Ejemplo

// 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;
    }
}

Supresión de una advertencia

Si solo quiere suprimir una única infracción, agregue directivas de preprocesador al archivo de origen para deshabilitar y volver a habilitar la regla.

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

Para deshabilitar la regla de un archivo, una carpeta o un proyecto, establezca su gravedad en none del archivo de configuración.

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

Para deshabilitar toda esta categoría de reglas, establezca la gravedad de la categoría en none del archivo de configuración.

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

Para obtener más información, consulte Procedimiento para suprimir advertencias de análisis de código.

Consulte también