我想知道是否有办法从我的预处理模板生成多个文件?
最佳答案
当您调用“TransformText()”方法时,预处理模板会以字符串形式返回整个生成的代码。结果保存在哪个文件中由您决定。
您可以将 token 渲染到生成的代码中,无论您想在何处启动新文件,分割返回的字符串并将每个部分保存在单独的文件中。
例如 - 如果这是您的预处理模板:
<#@ template #>
// This output text goes to the first file
NEW_FILE_TOKEN
// this output text goes to the next file
你的调用代码将是这样的:
var myTemplateInstance = new MyTemplate();
var result = myTemplateInstance.TransformText();
var fileContents = result.Split("NEW_FILE_TOKEN");
for(int i = 0; i < fileContents.Count; i++)
{
System.IO.File.WriteAllText("File" + i.ToString() + ".txt", fileContents[i]);
}
您最终会得到两个文件(File0.txt 和 File1.txt),一个包含第一个注释行,另一个包含第二个注释行。
关于.net - 从 t4 预处理文本模板生成多个输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15108336/