Freigeben über


Übersicht über die Legacyanalyse für verwalteten Code in Visual Studio

Visual Studio kann die Codeanalyse von verwaltetem Code auf zwei Arten durchführen: mit der Legacyanalyse, auch bekannt als FxCop-Analyse von verwalteten Assemblies, und mit den moderneren Code-Analysewerkzeugen, die auf der .NET-Compiler-Plattform basieren. In diesem Thema wird die Legacyanalyse behandelt. Weitere Informationen zur .NET Compiler Platform-basierten Codeanalyse finden Sie in der Übersicht über .NET Compiler Platform-basierte Analyzer.

Die Codeanalyse für verwalteten Code analysiert verwaltete Assemblys und meldet Informationen zu den Assemblys, z. B. Verstöße gegen die Programmier- und Entwurfsregeln, die in den .NET-Entwurfsrichtlinien festgelegt sind.

Das Analysetool stellt die Prüfungen dar, die es während einer Analyse als Warnmeldungen ausführt. Warnmeldungen identifizieren relevante Programmier- und Entwurfsprobleme und geben, wenn es möglich ist, Informationen zur Behebung des Problems an.

Hinweis

Legacyanalyse (statische Codeanalyse) wird für .NET Core- und .NET Standard-Projekte in Visual Studio nicht unterstützt. Wenn Sie eine Codeanalyse für ein .NET Core- oder .NET Standard-Projekt als Teil von msbuild ausführen, wird ein Fehler wie fehler angezeigt: CA0055: Die Plattform für <your.dll>konnte nicht identifiziert werden. Um Code in .NET Core- oder .NET Standard-Projekten zu analysieren, verwenden Sie stattdessen Codeanalysatoren .

Integration der IDE (integrierte Entwicklungsumgebung)

Sie können die Code-Analyse für Ihr Projekt manuell oder automatisch ausführen.

Wenn Sie die Codeanalyse jedes Mal ausführen möchten, wenn Sie ein Projekt erstellen, wählen Sie die Option auf der Codeanalyse-Eigenschaftenseite des Projekts aus. Weitere Informationen finden Sie unter How to: Enable and Disable Automatic Code Analysis.

Wenn Sie die Codeanalyse manuell in einem Projekt ausführen möchten, wählen Sie in der Menüleiste Analysieren>, Codeanalyse ausführen> und Codeanalyse im <Projekt> aus.

Regelsätze

Codeanalyseregeln für verwalteten Code werden in Regelsätze gruppiert. Sie können einen der Microsoft-Standardregelsätze verwenden oder einen benutzerdefinierten Regelsatz erstellen , um eine bestimmte Anforderung zu erfüllen.

Unterdrücken von Warnungen

Häufig ist es hilfreich, darauf hinzuweisen, dass eine Warnung nicht anwendbar ist. Dies informiert den Entwickler und andere Personen, die den Code später überprüfen können, dass eine Warnung untersucht und dann entweder unterdrückt oder ignoriert wurde.

Die Unterdrückung von Warnungen im Quelltext erfolgt durch benutzerdefinierte Attribute. Um eine Warnung zu unterdrücken, fügen Sie das Attribut SuppressMessage dem Quellcode hinzu, wie im folgenden Beispiel gezeigt:

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1039:ListsAreStrongTyped")]
Public class MyClass
{
   // code
}

Weitere Informationen finden Sie unter Unterdrücken von Warnungen.

Hinweis

Wenn Sie ein Projekt zu Visual Studio 2019 migrieren, werden Sie möglicherweise plötzlich mit einer großen Anzahl von Codeanalysewarnungen konfrontiert. Wenn Sie nicht bereit sind, die Warnungen zu beheben, können Sie alle Warnungen unterdrücken, indem Sie Analysieren>Build und aktive Probleme unterdrücken auswählen.

Durchführung der Codeanalyse als Teil der Check-in-Richtlinie

Als Organisation möchten Sie möglicherweise festlegen, dass alle Einchecken bestimmte Richtlinien erfüllen. Insbesondere möchten Sie sicherstellen, dass Sie die folgenden Richtlinien befolgen:

  • Es gibt keine Buildfehler im Code, der eingecheckt wird.

  • Die Codeanalyse wird als Teil des neuesten Builds ausgeführt.

Sie können dies erreichen, indem Sie Check-In-Richtlinien angeben. Weitere Informationen finden Sie unter Verbessern der Codequalität mit Projekt-Check-In-Richtlinien.

Team-Build-Integration

Sie können die integrierten Features des Buildsystems verwenden, um das Analysetool als Teil des Buildprozesses auszuführen. Weitere Informationen finden Sie unter Azure Pipelines.