Das Legacyformat „Target“ in globalen SuppressMessageAttribute-Attributen vermeiden (IDE0077)
Eigenschaft | Wert |
---|---|
Regel-ID | IDE0077 |
Titel | Das Legacyformat „Target“ in globalen SuppressMessageAttribute vermeiden |
Kategorie | CodeQuality |
Unterkategorie | Verschiedene Regeln |
Gültige Sprachen | C# und Visual Basic |
Übersicht
Diese Regel kennzeichnet globale SuppressMessageAttribute-Attribute, die Target
mithilfe des Zielzeichenfolgenformats FxCop (Legacy) angeben. Durch die Verwendung des Legacyformats Target
können Leistungsprobleme auftreten. Daher sollte es nicht verwendet 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 unter Format der Dokumentations-ID.
Tipp
Visual Studio 2019 bietet eine Codekorrektur, mit der das Target
des Attributs automatisch auf das empfohlene Format korrigiert wird.
Optionen
Dieser Regel sind keine Codeformatoptionen zugeordnet.
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
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 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 Konfigurationsdatei auf none
fest.
[*.{cs,vb}]
dotnet_diagnostic.IDE0077.severity = none
Um diese gesamte Kategorie von Regeln zu deaktivieren, legen Sie den Schweregrad für die Kategorie in der Konfigurationsdatei auf none
fest.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-CodeQuality.severity = none
Weitere Informationen finden Sie unter Vorgehensweise: Unterdrücken von Codeanalyse-Warnungen.