Поделиться через


Преобразование typeof в nameof (IDE0082)

Свойство Ценность
идентификатор правила IDE0082
Заголовок Преобразование typeof в nameof
категории Стиль
подкатегория Языковые правила (предпочтения уровня выражений)
применимые языки C# и Visual Basic

Обзор

Это правило стиля рекомендует использовать оператор nameof вместо оператора typeof , за которым следует Name доступ к члену. Это происходит только в том случае, если имя будет идентичным в обоих случаях.

Параметры

Это правило не имеет связанных параметров стиля кода.

Пример

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

Подавление предупреждения

Если вы хотите отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.

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

Чтобы отключить правило для файла, папки или проекта, задайте его серьезность none в файле конфигурации .

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

Чтобы отключить все правила стиля кода, задайте уровень серьезности для категории Style, чтобы none в файле конфигурации .

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

Дополнительные сведения см. в статье Подавление предупреждений анализа кода.

См. также