typeof
in nameof
konvertieren (IDE0082)
Eigenschaft | Wert |
---|---|
Regel-ID | IDE0082 |
Titel | Konvertieren von typeof in nameof |
Kategorie | Stil |
Unterkategorie | Sprachregeln (Einstellungen auf Ausdrucksebene) |
Gültige Sprachen | C# und Visual Basic |
Übersicht
Diese Stilregel empfiehlt die Verwendung des nameof-Operators anstelle des typeof-Operators, gefolgt vom Name-Memberzugriff. Sie wird nur ausgelöst, wenn der Name in beiden Fällen identisch ist.
Optionen
Dieser Regel sind keine Codeformatoptionen zugeordnet.
Beispiel
// 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)
Unterdrücken einer Warnung
Um nur eine einzelne Verletzung zu unterdrücken, fügen Sie der Quelldatei Präprozessoranweisungen hinzu, um die Regel zu deaktivieren und dann wieder zu aktivieren.
#pragma warning disable IDE0082
// The code that's violating the rule is on this line.
#pragma warning restore IDE0082
Um die Regel für eine Datei, einen Ordner oder ein Projekt zu deaktivieren, legen Sie den Schweregrad in der Konfigurationsdatei auf none
fest.
[*.{cs,vb}]
dotnet_diagnostic.IDE0082.severity = none
Um alle Regeln im Code-Stil zu deaktivieren, setzen Sie den Schweregrad für die Kategorie in der KonfigurationsdateiStyle
auf none
.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Weitere Informationen finden Sie unter Vorgehensweise: Unterdrücken von Codeanalyse-Warnungen.