從網域指定的語言產生程式碼

Microsoft 特定領域語言工具提供強大的方式,以從模型中表示的資料產生程式碼、文件、組態檔和其他成品。 使用特定領域語言工具,您可以建立一組代表資料的類別,而且可在名稱與屬性反映該資料的類別中撰寫您的文字範本。

例如,Fabrikam 具有客戶名稱和電子郵件地址的 XML 檔案。 其開發人員會建立一個模型,其中 Customer 是包含屬性名稱和電子郵件的類別。 他們會撰寫數個文字範本來處理資料,包括此片段,其可產生所有客戶的資料表作為 HTML 頁面的一部分:

<table>
<# foreach (Customer c in ContactList) {  #>
  <tr><td> <#= c.FullName #> </td>
      <td> <#= c.EmailAddress #> </td> </tr>
<# } #>  </table>

處理客戶資料庫後,XML 檔案會讀取至模型存放區中。 使用特定領域語言工具建立的指示詞處理器,可讓 Customer 類別可供文字範本中的程式碼使用。 許多文字範本可以針對相同的存放區執行。

文字範本對於特定領域語言工具至關重要。 其用於產生領域模型元素的原始程式碼,以及用來整合工具與 Visual Studio 的 VSPackage 和控制項。

本節討論的一些方式可建立、修改及偵錯特定領域語言工具中使用的文字範本。

本節內容

從文字範本存取模型
提供有關在文字範本中參考特定領域語言的基本資訊。

逐步解說:偵錯存取模型的文字範本
說明如何在參考特定網域語言的文字範本上進行疑難排解和偵錯。

逐步解說:將主機連接至產生的指示詞處理器
說明如何將自訂主機連線至產生的指示詞處理器。

DslTextTransform 命令
說明可在命令列上針對參考特定領域語言的文字範本執行 TextTransform 可執行檔的命令檔。

參考

撰寫 T4 文字範本
提供文字範本指示詞和控制區塊的語法。