功能齊全的(de)T4文字模闆
期待您最少能意識到即便有編碼全自動制作器,但數據庫查詢構造變動等要素也(yě)會讓我們産生許多(duō) 的(de)不便。這(zhè)類立即放進新項目裏.tt文檔的(de)益處當然無需多(duō)講過。有尤其的(de)業務流程要求,在.用(yòng)partial類來(lái)完成,以防模版文檔自動升級編碼時(shí)将筆寫的(de)編碼遮蓋掉。(北(běi)京市網站制作)
T4文字模闆究竟有什(shén)麽作用(yòng)?什(shén)麽時(shí)候用(yòng)?
看一下(xià)下(xià)邊這(zhè)一實例你應該便會懂(dǒng)了(le):
在建一個(gè)控制面闆程序運行,删掉裏邊的(de)全部文檔,在建一個(gè)Program.tt的(de)文檔,并鍵入以下(xià)內容:
儲存後大(dà)家會見到解決方法任務管理(lǐ)器中是這(zhè)一款式的(de):
這(zhè)時(shí)的(de)Program.cs文件更是大(dà)家的(de)Program.tt文檔轉化(huà)成的(de),其內容以下(xià):
看一下(xià)下(xià)邊2個(gè)命令:
<#@ template #>命令中language特定了(le)大(dà)家模版運作應用(yòng)的(de)語言,能夠 是VB,或C#,debug申明(míng)了(le)是不是應用(yòng)調節,假如用(yòng)不上調節,能夠 設定爲false.
<#@ output #>命令中extension特定了(le)輸出文檔的(de)後綴名,encoding特定輸出文檔的(de)編碼方案。
換句話(huà)說,我們可(kě)以應用(yòng)C#語言來(lái)寫此模版文檔中的(de)邏輯性,模版可(kě)能輸出一個(gè)與模版文件夾名稱同樣,拓展名叫.cs編号爲utf-8的(de)文檔。
這(zhè)兒(ér)稍加掌握下(xià),接下(xià)去看一下(xià)命令的(de)英語的(de)語法吧:
命令的(de)英語的(de)語法以下(xià)所顯示:
務必将全部特點值放到雙引号内。假如值自身包括冒号,則務必應用(yòng) 标識符對(duì)這(zhè)種冒号開展轉義。
命令一般是模版文檔或包括的(de)文檔中的(de)第一個(gè)原素。不可(kě)将他(tā)們置放在代碼塊 <#...#> 内,都不應置放在類功能塊 <# ...#> 以後。
T4 模版命令
<#@ template [language="VB"] [hostspecific="true"] [debug="true"] [inherits="templateBaseClass"] [culture="code"] [compilerOptions="options"] #>
T4 主要參數命令
<#@ parameter type="Full.TypeName"name="ParameterName"#>
T4 輸出命令
<#@ output extension=".fileNameExtension"[encoding="encoding"] #>
T4 程序流程集命令
<#@ assembly name="[assembly strong name|assembly file name]"#>
T4 導進命令
<#@ import namespace="namespace"#>
T4 包括命令
<#@ include file="filePath"#>
看過上邊的(de)命令後,就嘗試寫個(gè)模版文檔轉化(huà)成一些類來(lái)訓練一下(xià)吧:
大(dà)家一般的(de)新項目多(duō)是分(fēn)了(le)簡易三層,擁有上邊的(de)一些工作經驗,你應該會想。如果隻寫三個(gè)類.tt文檔,就能全自動讓我們把全部三層維護保養好哪麽多(duō)令人(rén)激動啊!的(de)确,我是這(zhè)樣的(de)人(rén)幹了(le)一個(gè)新項目給大(dà)夥兒(ér)共享一下(xià):
看一下(xià)如今全部新項目成什(shén)麽樣子了(le):
這(zhè)兒(ér)不僅三個(gè)新項目了(le)。你加了(le)個(gè)UnitTest的(de)新項目,一個(gè)Adapters的(de)新項目,看項目規劃可(kě)以看出來(lái),UnitTest新項目便是一個(gè)測試報告。而Adapters新項目呢(ne),是實體線電源适配器新項目。先無論他(tā)們了(le)。
就那麽點物(wù)品,早已進行三層的(de)搭建了(le),僅僅還是Paramter方法的(de)。沒有對(duì)存儲過程的(de)适用(yòng)。十一要是沒有人(rén)陪著(zhe)我過得(de)話(huà),我能将對(duì)存儲過程的(de)适用(yòng)加上上來(lái)。
建新項目的(de)情況下(xià)建的(de)是.net 4的(de),這(zhè)兒(ér)我将它改成.net2.0的(de)了(le)。但是自己隻配有visual stuido 2010,假如您應用(yòng)的(de)是Visual studio 2008請您自主将新項目文檔中的(de)版本信息更改,此方式 在網上有很多(duō)。我不多(duō)唠叨了(le)。
标識:北(běi)京市網站制作 高(gāo)檔網站建設
留下(xià)聯系方式,我們将會在一個(gè)工作日内與你聯系