建立特定領域語言解決方案
特定領域語言 (DSL) 是使用特製化的 Visual Studio 方案建立。
必要條件
開始此程序之前,請先安裝這些元件:
- Visual Studio
- Visual Studio SDK (隨著 Visual Studio 延伸模組開發工作負載的一部分安裝)
- Modeling SDK (安裝為 Visual Studio 元件)
注意
文字範本轉換元件會作為 Visual Studio 延伸模組開發工作負載的一部分自動安裝。 您也可以從 Visual Studio 安裝程式的 [個別元件] 索引標籤加以安裝,其位於 [SDK、程式庫和架構] 底下。 從 [個別元件] 索引標籤安裝 Modeling SDK 元件。
建立特定領域語言方案
建立新的特定領域語言設計工具專案,以啟動 DSL 精靈。
注意
理想上,您為專案選擇的名稱應該是有效的 Visual C# 識別碼,因為它可能用來產生程式碼。
選擇 DSL 範本。
在 [選取特定領域語言選項] 頁面上,選取其中一個方案範本,例如 [最小語言]。 選擇與您想要建立的 DSL 類似的範本。
如需方案範本的詳細資訊,請參閱選擇特定領域語言方案範本。
在 [檔案副檔名] 頁面上輸入檔案名稱副檔名。 它應該在您的電腦中以及在您想要安裝 DSL 的任何電腦上是唯一的。 您應該會看到沒有應用程式或 Visual Studio 編輯器使用此延伸模組訊息。
如果您在先前尚未完整安裝的實驗 DSL 中使用了檔案名稱副檔名,則可以使用 [重設實驗執行個體] 工具將其清除,您可以在 Visual Studio SDK 功能表中找到。
如果電腦上已完整安裝使用此檔案副檔名的另一個 Visual Studio 延伸模組,請考慮將它解除安裝。 在 [工具] 功能表上,按一下 [延伸模組管理員]。
檢查精靈其餘頁面中的欄位,並視需要進行調整。 當您對設定覺得滿意之後,按一下 [完成]。 如需設定的詳細資訊,請參閱 DSL 設計工具精靈頁面。
精靈會建立一個方案,其中包含兩個專案,名為 Dsl 和 DslPackage。
注意
如果您看到警示您不要從未受信任的來源執行文字範本的訊息,請按一下 [確定]。 您可以設定讓此訊息不再出現。
DSL 設計工具精靈頁面
您可以保留數個欄位的預設值不變。 不過,請確定您已設定 [檔案副檔名] 欄位。
方案設定頁面
您要將哪一個範本當成特定領域語言的根據? 選擇與您想要建立的 DSL 類似的範本。 不同的範本提供方便的起點。 選取方案範本時,精靈會顯示描述。 如需方案範本的詳細資訊,請參閱選擇特定領域語言方案範本。
要替特定領域語言取什麼名稱? 預設為方案名稱。 程式碼會從此值產生。 它必須是有效的 C# 類別名稱。
檔案副檔名頁面
模型檔案應該使用的副檔名為何? 輸入新的檔案副檔名。
驗證此檔案副檔名尚未註冊可在此電腦中使用,如下所示:
在 [其他註冊處理這個副檔名的工具和應用程式] 下尋找。 如果您看到沒有應用程式或 Visual Studio 編輯器使用此檔案副檔名訊息,則可以使用此檔案副檔名。
如果您看到工具或封裝清單,您應該執行下列其中一項動作:
輸入不同的檔案副檔名。
- 或 -
重設 Visual Studio 實驗執行個體。 這會取消註冊您先前建置的所有 DSL。 在 Windows 開始功能表中,輸入重設 Visual Studio,然後執行與您的 Visual Studio 版本相符的重設 Microsoft Visual Studio 實驗性實例命令。 您可以重建您想要再次使用的任何其他 DSL。
- 或 -
如果電腦上已完整安裝使用此檔案副檔名的 Visual Studio 延伸模組,請將它解除安裝。 在 [工具] 功能表上,按一下 [延伸模組管理員]。
產品設定頁面
新特定領域語言所屬產品的名稱為何? 預設為 DSL 名稱。
此值用於 Windows 檔案總管 (或檔案總管) 中,以描述具有此檔案副檔名的檔案。
產品所屬公司的名稱為何? 您的公司名稱。
此值會併入 DSL 封裝的 AssemblyInfo 屬性中。
什麼是方案中專案的根命名空間? 這預設為由您的公司與產品名稱組成的名稱。
簽署頁面
建立強式名稱金鑰檔案 預設選項是建立新的金鑰來簽署您的 DSL 組件。
使用現有的強式名稱金鑰 如果想要將您的 DSL 與另一個組件整合,請使用此選項。
如需強式命名的詳細資訊,請參閱建立和使用強式名稱組件。
相關內容
- 如何定義特定領域語言
- Domain-Specific Language Tools Glossary (特定領域語言工具字彙表)