Compartilhar via


Converter typeof em nameof (IDE0082)

Propriedade Valor
ID da regra IDE0082
Título Converter typeof em nameof
Categoria Estilo
Subcategoria Regras de linguagem (preferências no nível de expressão)
Linguagens aplicáveis C# e Visual Basic

Visão geral

Essa regra de estilo recomenda o uso do operador nameof sobre o operador typeof seguido de acesso de membro Name. Ele só será acionado quando o nome for idêntico em ambos os casos.

Opções

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

Exemplo

// 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)

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 IDE0082
// The code that's violating the rule is on this line.
#pragma warning restore IDE0082

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

Para desabilitar todas as regras de estilo de código, defina a severidade da categoria Style como none no arquivo de configuração.

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

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

Confira também