Conversión de typeof
en nameof
(IDE0082)
Propiedad | Value |
---|---|
Identificador de la regla | IDE0082 |
Título | Convertir typeof en nameof |
Categoría | Estilo |
Subcategoría | Reglas del lenguaje (preferencias de nivel de expresión) |
Lenguajes aplicables | C# y Visual Basic |
Información general
Esta regla de estilo recomienda el uso del operador nameof antes que el operador typeof seguido del acceso a miembros Name. Solo se desencadena cuando el nombre será idéntico en ambos casos.
Opciones
Esta regla no tiene opciones de estilo de código asociadas.
Ejemplo
// Code with violations
var n1 = typeof(T).Name;
var n2 = typeof(int).Name;
// Fixed code
var n1 = nameof(T);
var n2 = nameof(Int32);
' Code with violations
Dim n1 = GetType(T).Name
Dim n2 = GetType(Integer).Name
' Fixed code
Dim n1 = NameOf(T)
Dim n2 = NameOf(Int32)
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 IDE0082
// The code that's violating the rule is on this line.
#pragma warning restore IDE0082
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.IDE0082.severity = none
Para deshabilitar todas las reglas de estilo del código, establezca la gravedad de la categoría Style
en none
del archivo de configuración.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Para obtener más información, consulte Procedimiento para suprimir advertencias de análisis de código.