Roslyn Script によるコード生成「Scripty」を試用
T4 以外でのコード生成を調べていた時に、「Scripty」という Roslyn で動くコード生成のライブラリがあったので、メモ。
基本的な使い方は、以下のドキュメントから分かります。
daveaglick/Scripty: Tools to let you use Roslyn-powered C# scripts for code generation
Dave Glick - Announcing Scripty
記述されているように、特定の NuGet パッケージを取得し、Visual Studio Extension をインストールします。 Roslyn Syntax API でプロジェクトファイルにアクセスできるようになっています。
Sample
今回お試しとして、ASP.NET MVC 5 のプロジェクト内にある「**Controller.cs」クラス名と、そのコンストラクタの引数の型名を列挙するスクリプトを書いてみました。
これで実行すると、次のような .cs ファイルが生成されます(コメントだけ書いてありますが)。
//Controller Class Name: HomeController //Parameter Type Name: IUserService //Controller Class Name: PersonController //Parameter Type Name: IUserService
参照: