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.