在解决方案中多个 DSL

可以包多个 DSL 为单个解决方案的一部分,以便一起安装它们。

可以使用多种技术集成多个 DSL。有关更多信息,请参见 使用 Visual Studio Modelbus 集成模型如何:添加拖放处理程序自定义复制行为

生成多个 DSL 在同一解决方案

  1. 创建两个或多个 DSL 解决方案和一个 VSIX 项目,并将所有项添加到单个解决方案。

    • 创建新的 VSIX 项目:在 新项目 对话框中,选择 Visual C#扩展性VSIX 项目

    • 创建两个或多个 DSL 解决方案在 VSIX 解决方案目录中。

      确保使用不同的文件扩展名创建每个 DSL。

    • 更改 DSLDslPackage 项目的名称,以便它们都是不同的。例如: Dsl1, DslPackage1, Dsl2, DslPackage2。

    • 在每 DslPackage*\source.extension.tt,请更新此行到正确的 DSL 项目名称:

      string dslProjectName = "Dsl2";

    • 在 VSIX 解决方案中,添加 Dsl* 和 DslPackage* 项目。

      在各自的解决方案文件夹可能希望在每一对。

  2. 将 VSIX 清单 DSL:

    1. 打开 TheVsixProject**\source.extension.manifest**。

    2. 对于每个 DSL,选择 添加内容 并添加:

      • Dsl* 项作为 MEF 组件

      • DslPackage* 项作为 MEF 组件

      • DslPackage* 项作为 使用包

  3. 生成解决方案。

发生的 VSIX 将安装两个 DSL。通过使用 F5,可以进行测试,也可以部署 TheVsixProject**\bin\Debug\*.vsix**。

请参见

概念

使用 Visual Studio Modelbus 集成模型

如何:添加拖放处理程序

自定义复制行为