.NET 컴파일러 플랫폼("Roslyn") 분석기의 원본 분석은 관리 코드에 대한 레거시 분석을 대체합니다 . 많은 레거시 분석(FxCop) 규칙이 이미 원본 분석기로 다시 작성되었습니다.
Visual Studio 2019 16.8 및 .NET 5.0 이전에는 이러한 분석기가 Microsoft.CodeAnalysis.FxCopAnalyzers
로 제공되었습니다.
Visual Studio 2019 16.8 및 .NET 5.0부터 이러한 분석기는 .NET SDK에 포함됩니다. .NET 5+ SDK로 이동하지 않거나 NuGet 패키지 기반 모델을 선호하는 경우 Microsoft.CodeAnalysis.NetAnalyzers
에서도 분석기를 사용할 수 있습니다. 주문형 버전 업데이트에 패키지 기반 모델을 선호할 수 있습니다.
비고
자사 .NET 분석기는 대상 플랫폼에 구애받지 않습니다. 즉, 프로젝트는 특정 .NET 플랫폼을 대상으로 할 필요가 없습니다. 분석기는 net5.0
뿐만 아니라 netcoreapp
, netstandard
, net472
와 같은 이전 .NET 버전을 대상으로 하는 프로젝트에 대해 작동합니다.
마이그레이션 단계
버전 3.3.2
Microsoft.CodeAnalysis.FxCopAnalyzers
부터 NuGet 패키지는 더 이상 사용되지 않습니다. 프로젝트 또는 솔루션을 .NET 분석기에서 Microsoft.CodeAnalysis.FxCopAnalyzers
마이그레이션하려면 아래 단계를 따르세요.
NuGet 패키지 제거
Microsoft.CodeAnalysis.FxCopAnalyzers
.NET 분석기를 사용하거나 설치합니다. 프로젝트의 대상 플랫폼을 변경할 필요가 없습니다.
추가 규칙 사용:
Microsoft.CodeAnalysis.NetAnalyzers
에 비해Microsoft.CodeAnalysis.FxCopAnalyzers
훨씬 더 보수적입니다. FxCopAnalyzers 패키지와 달리 기본적으로 빌드 경고로 사용하도록 설정된 몇 가지 정확성 규칙만 있습니다. AnalysisMode MSBuild 속성을 사용자 지정하여 추가 규칙을 사용하도록 설정할 수 있습니다. 예를 들어 속성을 설정하면AllEnabledByDefault
적용 가능한 모든 CA 규칙을 기본적으로 빌드 경고로 사용하도록 설정합니다.<PropertyGroup> <AnalysisMode>AllEnabledByDefault</AnalysisMode> </PropertyGroup>