Несколько доменных языках в одном решении
Можно пакет несколько DSLs как часть единого решения, чтобы они устанавливается вместе.
Можно использовать несколько методов для интеграции несколько DSLs.Дополнительные сведения см. в разделе Интеграция моделей с помощью Visual Studio Modelbus и Практическое руководство. Добавление обработчика перетаскивания и Настройка функции копирования.
Построение нескольких DSL в одном решении
Создайте две или более решения DSL и проект VSIX, и добавьте всех проектов в одно решение.
Создание нового проекта VSIX: в Создать проект диалоговое окно открывается Visual c#" Расширение среды" Проект VSIX.
Создайте две или более решения DSL в каталоге решения VSIX.
Убедитесь, что создается каждый DSL с другим расширением имени файла.
Измените имена DSL и DslPackage проекты, чтобы они стали все различаются.Например: Dsl1" DslPackage1" Dsl2" DslPackage2.
в каждом DslPackage*\source.extension.ttобновите эта линия к правильному имени проекта Dsl:
string dslProjectName = "Dsl2";
В решении VSIX добавьте проекты Dsl* и DslPackage*.
Может потребоваться присвоить каждую пару в собственной папке решения.
Объедините манифест VSIX DSLs:
Открыть YourVsixProject**\source.extension.manifest**.
Выберите для каждого DSL Добавить содержимое и добавьте:
Dsl* проект как a компонент MEF
DslPackage* проект как a компонент MEF
DslPackage* проект как a Пакет VS
Выполните построение решения.
Результирующая VSIX задает оба DSLs.Можно проверить их с помощью F5 или развертывание YourVsixProject**\bin\Debug\*.vsix**.
См. также
Основные понятия
Интеграция моделей с помощью Visual Studio Modelbus
Практическое руководство. Добавление обработчика перетаскивания