Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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.