3

Roslyn コード アナライザーを使用していくつかのルールを作成します。このルールは、名前空間へのアクセスを制御するためのものです。たとえば、DAL はコアのみを使用できます。ビューが DAL を使用している場合は、警告が必要です。

「Visual Studio 2015 Community Edition」のテンプレート「Analyzer with Code Fix (NuGet + VSIX)」を使用して、プラグインを生成します。

私はいくつかのテストを行いましたが、正常に動作します。ただし、ルールはコードにハードに記述されています。ランタイムでルールを構成する方法がわかりません。最適なのは、ソリューションまたはプロジェクトの構成ファイルです。

例を教えてください。

感謝。

ソリューションの再開 :

  1. 分析したプロジェクトの Visual Studio にファイルを追加します。
  2. .csproj をエディターで開き、構成ファイルの項目グループを変更します。

    <None Include="test.txt" /> -> <AdditionalFiles Include="test.txt" />

ファイルを読む例

4

1 に答える 1

4

AdditionalFilesの項目を使用して、アナライザーのランタイム構成を追加できます.csproj。これらは/additionalfile:<path>、コンパイラのコマンド ライン オプションに展開されます。VS "15" プレビューでは、UI からそれを行うことができます。

ここに画像の説明を入力

これを設定すると、以下が .csproj に追加されます。

<ItemGroup>
  <AdditionalFiles Include="test.txt" />
</ItemGroup>

アナライザーは、 CompilationStartAnalysisContext.Optionsで利用可能なAnalyzerOptions.AdditionalFilesを介してそれらにアクセスできます。

于 2016-06-01T19:14:21.090 に答える