私はC#コードを生成するソフトウェアを書いています。ほとんどの場合、 StringTemplateとStringBuilderを使用しています。
コードから直接T4テンプレートを使用する方法はありますか?
私はC#コードを生成するソフトウェアを書いています。ほとんどの場合、 StringTemplateとStringBuilderを使用しています。
コードから直接T4テンプレートを使用する方法はありますか?
Oleg Sychは、ここでこれを行う方法を説明しています: T4 の理解: 前処理されたテキスト テンプレート。前処理済みのテキスト テンプレートを生成するには Visual Studio 2010 が必要なようですが、前処理済みのテキスト テンプレートは、WinForms アプリケーション内など、好きな場所にホストできます。
これを行う簡単な方法:
System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.EnableRaisingEvents = false;
// Set text transform program (this could change according to the Windows version)
proc.StartInfo.FileName = "C:\\Program Files (x86)\\Common Files\\microsoft shared\\TextTemplating\\10.0\\TextTransform.exe";
// Specify T4 template file
proc.StartInfo.Arguments = "C:\template.tt";
proc.Start();