Я использую пакет https://www.nuget.org/packages/dbup-sqlserver
для выполнения двух обновлений:
Scripts\Schema
- использует пустой журнал Scripts\Migrations
- использует значение по умолчанию (sql) journal
Единственная причина, по которой используются 2 запроса на обновление, связана с описанными выше требованиями к журналу null / default.
Следствием такого подхода является то, что теперь существует две различные транзакции базы данных. , Таким образом, если первое обновление выполняется нормально, но второе происходит сбой, это оставляет базу данных в нежелательном состоянии. Это управляемо в средах dev и qa, но не для производства.
Есть ли способ заставить DbUp использовать экземпляр транзакции, который можно передать в обновление, чтобы при любом сбое был выполнен полный откат?