Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What is going on with this article?
@ryuix

SourceGeneratorのデバッグ

概要

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が選択できるようになります。

srcgen.png

あとはリリースノート通りにターゲットプロジェクトを指定するだけですね。
ターゲットプロジェクトからのSourceGeneratorプロジェクトの参照に<OutputItemType>Analyzer</OutputItemType>がないと選択できないので注意しましょう。

参考

https://github.com/dotnet/roslyn-sdk/pull/726

0
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ryuix
製造業社内SE/WPFで業務支援アプリ等を作ってます。関東に転職したいです

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
0
Help us understand the problem. What is going on with this article?