Konwertowanie typeof na nameof (IDE0082)

Właściwość Wartość
Identyfikator zasady IDE0082
Tytuł Konwertuj typeof na nameof
Kategoria Styl
Subcategory (Podkategoria) Reguły języka (preferencje na poziomie wyrażenia)
Odpowiednie języki C# i Visual Basic

Omówienie

Ta reguła stylu zaleca użycie operatora nameof przez operator typeof , a następnie Name dostęp do składowych. Jest ona uruchamiana tylko wtedy, gdy nazwa będzie identyczna w obu przypadkach.

Opcje

Ta reguła nie ma skojarzonych opcji stylu kodu.

Przykład

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

Pomijanie ostrzeżenia

Jeśli chcesz pominąć tylko jedno naruszenie, dodaj dyrektywy preprocesora do pliku źródłowego, aby wyłączyć, a następnie ponownie włączyć regułę.

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

Aby wyłączyć regułę dla pliku, folderu lub projektu, ustaw jego ważność na none w pliku konfiguracji.

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

Aby wyłączyć wszystkie reguły stylu kodu, ustaw ważność dla kategorii Style na none w pliku konfiguracji.

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

Aby uzyskać więcej informacji, zobacz Jak pominąć ostrzeżenia analizy kodu.

Zobacz też