Рабочие процессы Elsa: используйте SQL Server с ядром Entity Framework

#elsa-workflows

#elsa-рабочие процессы

Вопрос:

Я изо всех сил пытаюсь следовать базовому руководству по Elsa с сохранением Ef-Core / SQL. Во время выполнения происходит сбой приложения с ошибкой, явно указывающей на отсутствие определенных таблиц. Я использую Elsa как встроенную в мой API. У меня есть свой собственный DbContext. Мне нужно еще, чтобы жить в моей базе данных. Но Update Database не работает, сообщая о нескольких контекстах, и я должен указать свой для своих изменений.

Вопрос: Каков контекст Elsa?

Ответ: ?

Вопрос: Как мне создать таблицы для Elsa в моей базе данных?

Ответ: ?

Вопрос: Что это за переменная среды EF_CONNECTIONSTRING и зачем это нужно?

Ответ: ?

Спасибо.

Обновить

Итак, мне удалось раскопать несколько вещей в режиме… мои вопросы были:

Вопрос: Каков контекст Elsa?

A: SqlServerContext

Вопрос: Как мне создать таблицы для Elsa в моей базе данных?

A: Update-Database -context SqlServerContext

Вопрос: Что это за переменная среды EF_CONNECTIONSTRING и зачем это нужно?

О: С этим я борюсь. Я получаю сообщение об ошибке, если я просто запускаю Update-Database -context SqlServerContext : установите для переменной среды EF_CONNECTIONSTRING допустимую строку подключения к SQL Server.

Почему? У меня введено соединение:

 services.AddElsa(elsa => elsa.AddEntityFrameworkStores<SqlServerContext>(options => options.UseSqlServer(Configuration.GetConnectionString("PrimaryConnection"))))
 

Почему я должен устанавливать системную переменную, чтобы заставить Elsa работать?

Ответ №1:

Кажется, у вас есть большинство ответов, но для переменной среды вы указали строку подключения в методе настройки запуска, который выполняется во время выполнения, и команда Update-Database в консоли диспетчера пакетов не запускает приложение, поэтому оно не знает о строке подключения, и у нас естьчтобы предоставить его с помощью переменной среды.

Комментарии:

1. Точно. И просто для информации; этот вопрос касается Elsa 1. В Elsa 2 миграции будут выполняться автоматически по умолчанию (от которых вы можете отказаться, если хотите самостоятельно контролировать время выполнения миграций).