1
我使用T4(C#)在運行時生成一些代碼。然後我將生成的代碼存儲在另一個模板的一部分的字符串中。在最終模板的相關代碼看起來像這樣:T4模板C# - 保持與 n r ..在生成的代碼中的常規字符串
string myFinalString = @"<#=GetGeneratedCode()#>";
其中GetGeneratedCode()
是:
public string GetGeneratedCode()
{
MyTemplate temp = new MyTemplate(); //<- another T4 template
return temp.TransformText();
}
MyTemplate.TransformText
返回類似下面的代碼:
MyClass
{
int myVar1;
string myVar2;
}
的問題是,在我生成的源文件,字符串myFinalString
設置有如下:
string myFinalString = @"MyClass
{
int myVar1;
string myVar2;
}";
我寧願,爲便於閱讀,獲得定期生成的字符串如下:
string myFinalString = @"MyClass\r\n{\r\n int myVar1;\r\n string myVar2;\r\n}";
誰能幫助我?
我不知道是什麼類型'TransformText()'收益,但有可能使用'temp.TransformText()更換。 (Environment.NewLine,「\\ r \\ n」);' –
@GrantWinney它的工作原理,thanks.TransformText返回一個字符串。我不認爲這是如此簡單......您能否請您重新發布您的評論作爲答案? – Malick
好聽@Malick!完成。 –