Konwertowanie typeof
na nameof
(IDE0082)
Własność | Wartość |
---|---|
identyfikator reguły | IDE0082 |
Tytuł | Konwertowanie typeof na nameof |
Kategoria | Styl |
Podkategoria | Reguły języka (preferencje na poziomie wyrażenia) |
odpowiednie języki | C# i Visual Basic |
Przegląd
Ta reguła stylu zaleca użycie operatora nameof zamiast operatora typeof z następującym Name dostępem do składowych. Jest 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 poziom ważności kategorii Style
na none
w pliku konfiguracyjnym .
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Aby uzyskać więcej informacji, zobacz Jak pominąć ostrzeżenia analizy kodu.
Zobacz też
- operator nameof
- operator typeof
- reguły języka stylu programowania
- Odniesienie do reguł stylu kodu