誰かがC#コードの生成に役立つライブラリを知っていますか?たとえば、クラスの定義を含む* .csファイルを生成する必要がある場合は、オブジェクトツリー(式ツリーに類似)を使用してクラスとメソッドのボディを指定し、ライブラリに文字列として書式設定されたC#コードを私によく与えてください。C#コードビルダー/フォーマッター
ありがとうございました。
誰かがC#コードの生成に役立つライブラリを知っていますか?たとえば、クラスの定義を含む* .csファイルを生成する必要がある場合は、オブジェクトツリー(式ツリーに類似)を使用してクラスとメソッドのボディを指定し、ライブラリに文字列として書式設定されたC#コードを私によく与えてください。C#コードビルダー/フォーマッター
ありがとうございました。
Microsoft.CSharp.CSharpCodeProvider
を見ましたか?
C#コードジェネレータとコードコンパイラのインスタンスへのアクセスを提供します。
確かに、それはSystem.dllの一部です。 –
+1と私はCodeDomで同じコードベースで異なる言語をターゲットにすることができます。 –
@Sasha - どのアセンブリがあったのか見ておくべきです...ありがとう:) – Oded
は、コード生成のための多くのツールがあり、彼らは次のとおりです。
コードスミス codesmithtoolsは、COM
codegeneratorproドットコム
など
コードジェネレータはのように聞こえるかもしれドット実際には、あなたが取り組んでいるプロジェクトの種類によって異なります。
System.CodeDomとCSharpCodeProviderを調べます。
私はむしろTerance ParrのStringTemplateが好きです。コンパイラ構築ツールの中心にありますANTLR — StringTemplateはコード生成を担当しているため、ANTLRはそのコンパイラの言語をターゲットにすることができます。
あなたは博士パーでこれらの論文では、文字列テンプレートについて読むことができますhttp://www.stringtemplate.org/download.html
から最新のC#/ネットポートをダウンロードすることができます。
CodeProjectには、StringTemplateのコード生成に関する記事もあります。http://www.codeproject.com/KB/codegen/DotNetCodeGeneration.aspx
明確にするために、カスタムC#コードからライブラリを呼び出したいとします。 – jthg