Microsoft.SqlServer.Dac.CodeAnalysis 名前空間

クラス

名前 説明
CodeAnalysisResult

特定のモデルに対するCode Analysisの結果。 分析中に発生したエラーに加えて、検出されたすべての SqlRuleProblemが含まれます

CodeAnalysisRuleSettings

分析中に使用されるルールの構成に使用される設定。

分析を開始する前に、この設定オブジェクトが分析サービスによって検出されたルールに適用されます。 DisableRulesNotInSettings が true に設定されている場合、これらの設定に含まれていないルールはすべて無効になり、分析中は実行されません。

これらの設定は、エンジンによって返されるルールに対して ApplySettingsToRules(IEnumerable<RuleConfiguration>) メソッドを呼び出すことによって適用されます。

CodeAnalysisService

モデルに対してコード分析を実行し、呼び出し元に結果を提供するサービス。

Analyze(TSqlModel)に対する複数のシミュレートされた呼び出しはサポートされていないため、このクラスはスレッド セーフではないことに注意してください。 ただし、別のスレッドがCancel() メソッドの完了を待機している間に、スレッドからAnalyze(TSqlModel)を呼び出す可能性があります。

CodeAnalysisServiceFactory

CodeAnalysisService オブジェクトの作成をサポートするファクトリ クラス。

CodeAnalysisServiceSettings

CodeAnalysisServiceのオプションの構成設定を定義します。 これにより、実行されるルール、特定の問題を抑制する方法、結果を保存する場所を決定できます。

これらの設定は、作成後に CodeAnalysisService で設定することもできますが、構築をより便利にするためにここに含まれています。

ExportCodeAnalysisRuleAttribute

ルールのエクスポートを定義する属性と、そのルールに関するメタデータ。 ISqlAnalysisRuleMetadata を実装します。これは、型の一貫性を確保するためにインポーター側で使用する必要があります

ProblemSuppressionException

ルールの問題抑制テストの実行時に発生した例外を表します。

ProjectProblemSuppressor

SSDT プロジェクトで使用される問題サプレッサーを表します。 このクラスを使用するために、 ShouldSuppressProblem メソッドを ShouldSuppressProblem に渡すことができます。

これにより、ルート ディレクトリ内の SuppressionFilename ("StaticCodeAnalysis.SuppressMessages.xml") と一致する名前を持つファイルから抑制情報が読み取られます。

すべての相対パスは、コンストラクターで定義されているプロジェクト フォルダーを基準にして解決されます

RuleConfiguration

ルールを構成する方法を指定します。これを有効または無効にする必要がありますか? ルールに適用する必要がある重大度は何ですか?

RuleDescriptor

ルール エンジンによって検出されたルールについて説明し、そのプロパティの構成をサポートします。 記述子は RuleConfigurationからプロパティを継承し、分析中のルールの有効化/無効化と、ルールによって作成された問題の重大度の指定をサポートします。

このクラスは、外部ユーザーによるサブクラスではなく、 RuleDescriptor のインスタンスが分析サービスによって作成されます。

RuleException

コード分析の実行中に発生する可能性がある例外を表します

SqlAnalysisRule

すべての種類の分析ルールの基本クラス。 分析ルールは、モデル/モデル要素を分析し、分析中に見つかった問題の一覧を返します。

SqlCodeAnalysisRule

SQL 静的コード分析規則の基本クラス。 分析ルールは、モデル/モデル要素を分析し、分析中に見つかった問題の一覧を返します。

クラスを実装するには、コード分析中に検出して使用するために、クラス定義で定義された ExportCodeAnalysisRuleAttribute が必要です。

SqlRuleExecutionContext

分析するスキーマ モデルとモデル要素など、分析に必要なフィールドを定義します。

SqlRuleProblem

分析中にルールによって検出された問題について説明します。 問題を検出したルール、問題の原因となっている SqlObject、重大度、表示するエラー メッセージなどの関連情報が含まれます。

ソースの位置情報 (ソース名、開始行、列) は、最初は ModelElement に基づいて推論され、コンストラクターに渡 FragmentFragmentが渡された場合、そのTSqlFragmentの開始行/列が使用されます (存在する場合)、それ以外の場合はTSqlObjectの値が使用されます (存在する場合)。 dacpac から生成されたモデルなど、特定のモデルにはソースの位置情報がない場合があることに注意してください。

SqlRuleProblemSuppressionContext

SCA 問題を抑制するためのコンテキスト情報

SuppressedProblemInfo

特定のソースに対して抑制されている問題に関する情報。 この情報には、ソース名と、問題を抑制する必要があるルールが含まれます。

インターフェイス

名前 説明
ISqlAnalysisRuleMetadata

ルールを記述するメタデータ (その名前空間、ID、スコープなど)。

列挙型

名前 説明
CodeAnalysisModelValidationMode

コード分析の前にモデルに対して実行される検証を決定します。

SqlRuleProblemSeverity

問題を報告するためのメッセージの種類

SqlRuleScope

静的コード分析ルールによって調べられたスコープ。