共用方式為


從舊版分析 (FxCop) 移至來源分析 (.NET 分析器)

.NET Compiler Platform(“Roslyn”)分析器的原始碼分析取代了適用於受控代碼的舊版分析。 對於較新的項目範本,例如 .NET Core 和 .NET Standard 專案,無法使用舊版分析。

許多舊版分析 (FxCop) 規則已經針對 .NET 分析器重寫,這是一組 Roslyn 程式代碼分析器。 Roslyn 分析器會在編譯程式執行期間執行原始程式碼型分析。 分析器結果會連同編譯程序結果一起報告。

如需有關舊版分析和來源分析差異的詳細資訊,請參閱下列各項:

遷移

若要移轉至來源分析:

  1. 啟用或安裝 .NET 分析器。 如同舊版分析規則違規,原始程式碼分析違規會出現在Visual Studio的 [錯誤清單] 視窗中。 此外,原始程式碼分析中發現的違規情形會在程式碼編輯器中顯示為違規程式代碼底下的 波浪線。 波浪線的色彩取決於規則的 嚴重程度設定 。 若要查看移植到新 .NET 分析器的規則狀態,請參閱 移植和未移植的規則

    備註

    在 Visual Studio 2019 16.8 和 .NET 5.0 之前,這些分析器會隨附為 Microsoft.CodeAnalysis.FxCopAnalyzersNuGet 套件。 從 Visual Studio 2019 16.8 和 .NET 5.0 開始,這些分析器 隨附於 .NET SDK 中。 它們也可作為 Microsoft.CodeAnalysis.NetAnalyzersNuGet 套件使用。 如需詳細資訊,請參閱 從 FxCop 分析器遷移至 .NET 分析器

  2. 若要解決 CA0507,請確定已停用專案的舊版程式碼分析。 在項目檔中,將 RunCodeAnalysis 屬性設定為 false:

    <RunCodeAnalysis>false</RunCodeAnalysis>

    或者,開啟 [專案屬性>程序代碼分析 ],然後停用 [在建置時執行] 設定。

設定

若要深入瞭解如何設定 .NET 分析器: