Übersicht über die Erweiterbarkeit der Regeln für die Datenbankcodeanalyse

Visual Studio Premium und Visual Studio Ultimate enthalten Codeanalyseregeln für Berichte zum Entwurf, zur Benennung sowie zu Leistungswarnungen für Transact-SQL im Datenbankcode. Weitere Informationen finden Sie unter Analysieren von Datenbankcode zum Verbessern der Codequalität.

Wenn die integrierten Codeanalyseregeln ein bestimmtes Transact-SQLTransact-SQL-Problem nicht abdecken, dieses jedoch abgedeckt werden soll, können Sie benutzerdefinierte Analyseregeln für den Datenbankcode erstellen. Beispielsweise können Sie eine benutzerdefinierte Regel erstellen, mit der die Verwendung der WAITFOR DELAY-Anweisung vermieden wird, wie in Exemplarische Vorgehensweise: Erstellen einer benutzerdefinierten Regelassembly für die statische Codeanalyse in SQL veranschaulicht. Zum Erstellen benutzerdefinierter Analyseregeln für Datenbankcode verwenden Sie die Klassen im Microsoft.Data.Schema.StaticCodeAnalysis-Namespace.

Bevor Sie benutzerdefinierte Codeanalyseregeln für Visual Studio erstellen, sollten Sie sich mit der grundlegenden Architektur für die verschiedenen Komponenten von Analyseregeln für Datenbankcode vertraut machen.

Komponenten von Analyseregeln für Datenbankcode

Das folgende Diagramm veranschaulicht die Interaktion der Komponenten von Analyseregeln für Datenbankcode.

Architektur der Erweiterbarkeit für die Analyse von statischem Code für die Database Edition

Architektur zum Erweitern von db-Codeanalyseregeln.

Wenn Sie die Analyseregelfunktion für Datenbankcode in der aktuellen Sitzung von Visual Studio verwenden, und zwar durch direktes Ausführen der Analyse für statischen Code (weitere Informationen finden Sie unter Gewusst wie: Analysieren von Transact-SQL-Code auf Codefehler) oder durch Ausführen eines Builds, werden alle Regeln werden so geladen und verwendet, wie Sie diese im Projekt konfiguriert haben. Weitere Informationen finden Sie unter Gewusst wie: Aktivieren und Deaktivieren bestimmter Regeln für die statische Analyse von Datenbankcode. Der Erweiterungs-Manager lädt zudem alle Assemblys der benutzerdefinierten Regel, die Sie erstellt und registriert haben. Weitere Informationen finden Sie unter Gewusst wie: Registrieren und Verwalten von Funktionserweiterungen.

Klassen mit benutzerdefinierten Regeln für die Codeanalyse erben von der StaticCodeAnalysisRule-Klasse. Die Klasse mit benutzerdefinierten Regeln verwaltet IModelElement und deren Microsoft.Data.Schema.ScriptDom, die an das Analysemodul für statischen Code übergeben werden, mithilfe des DataSchemaModel. Zudem stellt das Datenschemamodell Abfrageinformationen zu den Modellelementen, Beziehungen und Anmerkungen für die Codeanalyseregeln bereit, und diese Informationen werden an den Fehler-Manager übergeben.

Siehe auch

Aufgaben

Exemplarische Vorgehensweise: Erstellen einer benutzerdefinierten Regelassembly für die statische Codeanalyse in SQL

Gewusst wie: Registrieren und Verwalten von Funktionserweiterungen

Gewusst wie: Verteilen benutzerdefinierter Funktionserweiterungen an Teammitglieder

Konzepte

Erweitern der Datenbankfunktionen von Visual Studio

Analysieren von Datenbankcode zum Verbessern der Codequalität

Analysieren der Qualität von verwaltetem Code mit der Codeanalyse