Microsoft.SqlServer.Dac.CodeAnalysis 命名空間
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
類別
CodeAnalysisResult |
針對特定模型進行程式碼分析的結果。 除了分析期間發生的任何錯誤之外,還會包含任何 SqlRuleProblem 找到的 |
CodeAnalysisRuleSettings |
用來設定分析期間使用之規則的設定。 開始分析之前,此設定物件將會套用至分析服務探索的規則。 如果 DisableRulesNotInSettings 設定為 true,則這些設定中未包含的任何規則都會停用,且不會在分析期間執行。 這些設定會藉由呼叫引擎所傳回的規則上的 ApplySettingsToRules(IEnumerable<RuleConfiguration>) 方法來套用。 |
CodeAnalysisService |
可針對模型執行程式碼分析,並提供結果給呼叫者的服務。 請注意,此類別不是安全執行緒,因為不支援對 Analyze(TSqlModel) 的多個同時呼叫。 不過,可以從執行緒呼叫 Cancel(),而另一個執行緒正在等候 Analyze(TSqlModel) 方法來完成。 |
CodeAnalysisServiceFactory |
支援建立 CodeAnalysisService 物件的 Factory 類別。 |
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 和 Fragment,推斷來源位置資訊 (來源名稱、開始行和資料行)。 請注意,如果 Fragment 傳入 ,則會在存在) (使用的起始行/資料 TSqlFragment 行,否則 TSqlObject 如果存在) ,則會使用 的值 (。 請注意,某些模型 (例如從 dacpac 產生的模型) 可能沒有來源位置資訊。 |
SqlRuleProblemSuppressionContext |
隱藏 SCA 問題的內容資訊 |
SuppressedProblemInfo |
特定來源所隱藏之問題的相關資訊。 這項資訊包括來源名稱和應該隱藏問題的規則。 |
介面
ISqlAnalysisRuleMetadata |
描述規則 - 其命名空間、識別碼、範圍等的中繼資料。 |
列舉
CodeAnalysisModelValidationMode |
決定在程式碼分析之前在模型上執行的驗證。 |
SqlRuleProblemSeverity |
用來報告問題的訊息類型 |
SqlRuleScope |
靜態程式碼分析規則檢查的範圍。 |