元のT4テンプレートとは異なるクラスファイルを作成する必要がある場合は、この目的のために新しいテンプレートを作成する方がよいと思います。一時ファイルを保存する場合は、Syste.IOライブラリを使用してファイルを作成できます。
<#@ import namespace=“System.IO” #>
<#+
void SaveOutput(string outputFileName)
{
string templateDirectory = Path.GetDirectoryName(Host.TemplateFile);
string outputFilePath = Path.Combine(templateDirectory, outputFileName);
File.WriteAllText(outputFilePath, GetMyContent());
}
#>
<#+
string GetMyContent()
{
// clean the environment
this.GenerationEnvironment.Remove(0, this.GenerationEnvironment.Length);
#>
This is my content
<#+
// return new content
return this.GenerationEnvironment.ToString();
}
#>
GetMyContent()
出力ファイルに正しい内容を入力するように開発する必要があります。この例GetMyContent
では、毎回環境をクリーンアップするため、他のすべてのファイルを作成した後で、必ずSaveOutputメソッドを使用してください。