概要
Visual Studio 2019 バージョン 16.10 preview 2の新機能でSourceGeneratorのデバッガーサポートが追加されました。
デバッグに難があったので朗報ですね。
方法
ソース ジェネレーターのデバッガー サポートが追加されました。 まず、[Project Properties Debug](プロジェクト プロパティのデバッグ) ページで、"Roslyn コンポーネント" デバッガー オプションを有効にする必要があります。 そして、適切なターゲット プロジェクトを選択する必要があります。 次に、ジェネレーター プロジェクトで F5 キーを押します。これにより、ターゲット プロジェクトをビルドする CSC.exe/VBC.exe が開始され、ジェネレーター コードをデバッグできるようになります。
プロジェクトのプロパティを開いてもデバッガーオプションには見当たりません。
そこでSourceGeneratorのプロジェクトファイルを編集して<IsRoslynComponent>true</IsRoslynComponent>を加えます。
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>library</OutputType>
<TargetFramework>netstandard2.0</TargetFramework>
<IsRoslynComponent>true</IsRoslynComponent>
</PropertyGroup>
</Project>
改めてプロジェクトファイルのプロパティを開くと、デバッグページから無事にRoslyn Componentが選択できるようになります。
あとはリリースノート通りにターゲットプロジェクトを指定するだけですね。
ターゲットプロジェクトからのSourceGeneratorプロジェクトの参照に<OutputItemType>Analyzer</OutputItemType>がないと選択できないので注意しましょう。
