ASP.NET MVC使用T4
在項(xiàng)目里添加控制器和視圖時(shí),ASP.NET MVC使用T4(文本模板轉(zhuǎn)換工具箱,Text Template Transformation Toolkit)來(lái)生成代碼。T4是一個(gè)高度定制化的,基于模板的文本生成器。
Scott Guthrie之前所宣布的ASP.NET MVC的功能之一就是使用T4來(lái)生成代碼。代碼由T4引擎基于文本模板生成。這意味著任何人可以創(chuàng)建或修改這樣的模板,對(duì)生成的代碼進(jìn)行完全的控制。
一個(gè)T4模板結(jié)合了純文本塊和邏輯控制,看上去和其他Web Form頁(yè)面十分接近。Abhishek Mishra給出了一個(gè)編輯模板的詳細(xì)示例。
在Visual Studio中編輯T4模板無(wú)法得到智能感知支持,但是Clarius Consulting提供了一個(gè)T4編輯器社區(qū)版,可以與VS集成并提供語(yǔ)法高亮效果。他們同時(shí)提供了專業(yè)版,包括真正的智能感知支持;以及T4代碼生成器版本,支持自定義的T4托管環(huán)境(WSSF,ASP.NET MVC)、Server Explorer集成、XML和XSD文件的拖拽、友好的數(shù)據(jù)庫(kù)元數(shù)據(jù)獲取API等其他功能。
T4可用于自動(dòng)生成任何類型和目的文本文件。Scott Hanselman給出了一個(gè)示例:使用模板來(lái)生成LINQ to SQL代碼。Scott建議使用T4來(lái)完成各種重復(fù)性的文本生成任務(wù),即便它們與.NET無(wú)關(guān):“如果您在公司里要把同一件事手動(dòng)重復(fù)多遍,那么就讓它自動(dòng)生成吧?!?/P>
【編輯推薦】