Das Legacyformat „Target“ in globalen SuppressMessageAttribute-Attributen vermeiden (IDE0077)
Eigentum | Wert |
---|---|
Regel-ID | IDE0077 |
Titel | Das Legacyformat „Target“ in globalen SuppressMessageAttribute vermeiden |
Kategorie | CodeQuality |
Unterkategorie | Verschiedene Regeln |
Anwendbare Sprachen | C# und Visual Basic |
Überblick
Diese Regel kennzeichnet globale SuppressMessageAttribute-Attribute, die Target
mithilfe des Zielzeichenfolgenformats FxCop (Legacy) angeben. Die Verwendung des Legacyformats Target
ist dafür bekannt, Leistungsprobleme zu verursachen, und sollte vermieden werden. Weitere Informationen finden Sie unter dotnet/roslyn-Issue 44362.
Das empfohlene Format für Target
ist das Format der -Dokumentations-ID. Informationen zu Dokumentations-IDs finden Sie im Dokumentations-ID-Format.
Tipp
Visual Studio 2019 stellt eine Codekorrektur bereit, um die Target
des Attributs automatisch in das empfohlene Format zu ändern.
Optionen
Diese Regel enthält keine zugehörigen Codeformatoptionen.
Beispiel
// IDE0077: Legacy format target 'N.C.#F'
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "member", Target = "N.C.#F")]
// Fixed code
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "member", Target = "~F:N.C.F")]
namespace N
{
class C
{
public int F;
}
}
Unterdrücken einer Warnung
Wenn Sie nur einen einzelnen Verstoß unterdrücken möchten, fügen Sie Ihrer Quelldatei Präprozessordirektiven hinzu, um die Regel zu deaktivieren und dann erneut zu aktivieren.
#pragma warning disable IDE0077
// The code that's violating the rule is on this line.
#pragma warning restore IDE0077
Um die Regel für eine Datei, einen Ordner oder ein Projekt zu deaktivieren, legen Sie den Schweregrad in der Konfigurationsdateiauf none
fest.
[*.{cs,vb}]
dotnet_diagnostic.IDE0077.severity = none
Um diese gesamte Regelkategorie zu deaktivieren, legen Sie den Schweregrad für die Kategorie auf none
in der Konfigurationsdateifest.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-CodeQuality.severity = none
Weitere Informationen finden Sie unter So unterdrücken Sie Codeanalysewarnungen.