2

前処理されたテンプレートから複数のファイルを生成する方法があるかどうか疑問に思いましたか?

4

1 に答える 1

2

前処理されたテンプレートは、「TransformText()」メソッドを呼び出すと、生成されたコード全体を文字列として返します。結果をどのファイルに保存するかはあなた次第です。

新しいファイルを開始したい場所ならどこでもトークンを生成されたコードにレンダリングし、返された文字列を分割して、各部分を別のファイルに保存できます。

たとえば、これが前処理されたテンプレートの場合:

<#@ 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]);
}

最終的に 2 つのファイル (File0.txt と File1.txt) が作成されます。1 つは最初のコメント行を含み、もう 1 つは 2 番目のコメント行を含みます。

于 2013-02-27T13:41:30.203 に答える