2011-05-31 61 views
2

我想設置一個環境,讓我使用模板發送電子郵件給數千人。在所有這些中,性能是一個關鍵,我試圖找出, 當myscript.tt運行時,它是每次編譯和執行還是有一個編譯對象,可以重複使用後續調用執行腳本?每次請求時都會運行T4模板嗎?

回答

2
+1

「在第一步中,發動機預處理的模板:它分析處理指令,文本和代碼塊,生成具體的TextTransformatio n類,並將其編譯爲.NET程序集。在第二步中,T4引擎創建一個GeneratedTextTransformation類的實例,調用它的TransformText方法並保存它返回到輸出文件的字符串。「這是造成混淆的第二步,我確信預處理模板會只是被創建一次並且隨着時間的推移而被重用,但是第二步卻讓我產生了一些困惑: – brainydexter 2011-05-31 22:22:09

+0

以上是你發佈的Oleg鏈接的摘錄 – brainydexter 2011-05-31 22:23:01

+1

@brainydexter:你在預編譯的模板中調用它:string'result =新的MyTemplate()。TransformText();'模板及其代碼(邏輯等)被創建一次,但你然後調用TransformText來生成動態的期望輸出。在你的情況下,我認爲你用不同的電子郵件地址每次調用TransformText時 – 2011-05-31 22:30:28

相關問題