Microsoft.SqlServer.Dac.CodeAnalysis Namespace
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Klassen
CodeAnalysisResult |
Die Ergebnisse der Codeanalyse für ein bestimmtes Modell. Enthält alle gefundenen SqlRuleProblems sowie alle Fehler, die während der Analyse aufgetreten sind. |
CodeAnalysisRuleSettings |
Die Einstellungen, die zum Konfigurieren von Regeln verwendet werden, die während der Analyse verwendet werden. Dieses Einstellungsobjekt wird vor Beginn der Analyse auf die vom Analysedienst ermittelten Regeln angewendet. Wenn DisableRulesNotInSettings auf true festgelegt ist, werden alle Regeln, die nicht in diesen Einstellungen enthalten sind, deaktiviert und während der Analyse nicht ausgeführt. Diese Einstellungen werden durch Aufrufen der Methode ApplySettingsToRules(IEnumerable<RuleConfiguration>) auf alle von der Engine zurückgegebenen Regeln angewendet. |
CodeAnalysisService |
Ein Dienst, der am Modell eine Codeanalyse ausführt und die Ergebnisse an den Aufrufer zurückgibt. Beachten Sie, dass diese Klasse nicht threadsicher ist, da mehrere gleichzeitige Aufrufe von Analyze(TSqlModel) nicht unterstützt werden. Jedoch ist der Aufruf von Cancel() aus einem Thread möglich, während ein anderer Thread wartet, bis die Analyze(TSqlModel)-Methode abgeschlossen ist. |
CodeAnalysisServiceFactory |
Factory-Klasse, die die Erstellung von CodeAnalysisService Objekten unterstützt. |
CodeAnalysisServiceSettings |
Definiert die optionalen Konfigurationseinstellungen für ein CodeAnalysisService. Diese Einstellungen können festlegen, welche Regeln ausgeführt werden, wie bestimmte Probleme unterdrückt werden und wo die Ergebnisse gespeichert werden. Diese Einstellungen können auch in der CodeAnalysisService festgelegt werden (nachdem diese erstellt wurde), sind jedoch hier enthalten, um die Erstellung zu vereinfachen. |
ExportCodeAnalysisRuleAttribute |
Attribut, das einen Regelexport definiert, und die Metadaten zu dieser Regel. Implementiert ISqlAnalysisRuleMetadata, das auf der Importseite verwendet werden sollte, um die Typkonsistenz sicherzustellen. |
ProblemSuppressionException |
Repräsentiert eine Ausnahme, die beim Ausführen des Tests zur Unterdrückung von Regelproblemen aufgetreten ist. |
ProjectProblemSuppressor |
Der Problemfilter für SSDT-Projekte. Zur Verwendung dieser Klasse kann die ShouldSuppressProblem-Methode an ShouldSuppressProblem übergeben werden. Liest die Unterdrückungsinformationen aus einer Datei mit dem Namen SuppressionFilename ("StaticCodeAnalysis.SuppressMessages.xml") aus dem Stammverzeichnis. Alle relativen Pfade werden relativ zum im Konstruktor definierten Projektordner aufgelöst. |
RuleConfiguration |
Gibt an, wie eine Regel konfiguriert werden soll - soll diese aktiviert oder deaktiviert werden? Welcher Schweregrad soll für die Regel angewendet werden? |
RuleDescriptor |
Beschreibt eine von der Regel-Engine erkannte Regel und unterstützt die Konfiguration deren Eigenschaften. Die Deskriptoren übernehmen die Eigenschaften von RuleConfiguration zur Angabe des Status der Regel während der Analyse (aktiviert oder deaktiviert) sowie des Schweregrads der von der Regel generierten Probleme. Diese Klasse ist nicht als Unterklasse für externe Benutzer vorgesehen – Instanzen von RuleDescriptor werden vom Analysis Service erstellt. |
RuleException |
Darstellen einer Ausnahme, die während einer Codeanalyseausführung auftreten kann |
SqlAnalysisRule |
Basisklasse für alle Typen von Analyseregel. Eine Analyseregel analysiert ein Modell bzw. ein Modellelement und gibt eine Liste der bei der Analyse festgestellten Probleme zurück. |
SqlCodeAnalysisRule |
Basisklasse für statische SQL-Codeanalyseregeln. Eine Analyseregel analysiert ein Modell bzw. ein Modellelement und gibt eine Liste der bei der Analyse festgestellten Probleme zurück. Bei der Klassenimplementierung muss für die Klassendefinition ExportCodeAnalysisRuleAttribute definiert sein, damit die Definition erkannt und während der Codeanalyse verwendet wird. |
SqlRuleExecutionContext |
Definiert die erforderlichen Felder für die Analyse, einschließlich des Schemamodells und des Modellelements für die Analyse. |
SqlRuleProblem |
Beschreibt ein Problem, das während der Analyse durch eine Regel gefunden wird. Enthält relevante Informationen wie z. B. die Regel, die das Problem gefunden hat, das SqlObject, das das Problem verursacht hat, den Schweregrad und die anzuzeigende Fehlermeldung. Quellpositionsinformationen (Name der Datenquelle, Startzeile und -spalte) werden anfänglich hergeleitet, basierend auf das an den Konstruktor übergebenen ModelElement und Fragment. Beachten Sie, dass, wenn ein Fragment übergeben wird, die Startzeile/Spalte für diese TSqlFragment verwendet wird (falls vorhanden), andernfalls werden die TSqlObjectWerte des s verwendet (sofern vorhanden). Beachten Sie, dass bestimmte Modelle, wie z. B. solche, die aus einem Dacpac generiert werden, möglicherweise über keine Quellpositionsinformationen verfügen. |
SqlRuleProblemSuppressionContext |
Die Kontextinformationen zum Unterdrücken eines SCA-Problems. |
SuppressedProblemInfo |
Informationen zu einem Problem, das für eine bestimmte Quelle unterdrückt wird. Diese Informationen umfassen den Quelldateinamen und die Regel, deren Probleme unterdrückt werden sollen. |
Schnittstellen
ISqlAnalysisRuleMetadata |
Die Metadaten zum Beschreiben einer Regel – Namespace, ID, Bereich usw. |
Enumerationen
CodeAnalysisModelValidationMode |
Bestimmt die Validierung, die für das Modell vor der Codeanalyse durchgeführt wurde. |
SqlRuleProblemSeverity |
Der Meldungstyp zum Melden von Problemen |
SqlRuleScope |
Der Bereich, der von einer Analyseregel für statischen Code untersucht wird. |