DBUP — выполнение сценария по порядкуC#

Место общения программистов C#
Anonymous
DBUP — выполнение сценария по порядку

Сообщение Anonymous »

Я пробую DBUP и, похоже, не могу заставить его работать.
Я разбил свои сценарии в разные каталоги и поставил перед ними префикс в том порядке номеров, в котором они должны запускаться. Насколько я знаю, DBUP должен запускать сценарий на основе лексикографического каталога, а затем обрабатывать файлы внутри. Этого не происходит; похоже, что файлы обрабатываются так, как если бы они все находились в одном большом каталоге, и запускаются их в лексикографическом порядке независимо от каталога сценариев. Итак, у меня есть скрипт данных, который пытается вставить данные в еще не созданные таблицы.

Код: Выделить всё

var upgrader = DeployChanges.To.SqlDatabase(connectionString)
.WithScriptsFromFileSystem(Path.Combine(dbScripts, "00-PreDeployment"))
.WithScriptsFromFileSystem(Path.Combine(dbScripts, "01-Tables"))
.WithScriptsFromFileSystem(Path.Combine(dbScripts, "02-Views"))
.WithScriptsFromFileSystem(Path.Combine(dbScripts, "03-Functions"))
.WithScriptsFromFileSystem(Path.Combine(dbScripts, "04-StoredProcedures"))
.WithScriptsFromFileSystem(Path.Combine(dbScripts, "05-Data"))
.JournalToSqlTable("dbo", "SchemaVersion")
.LogToConsole()
.Build();
Я что-то упустил? Является ли решение просто префиксом ко всему моему сценарию порядка каталогов?
ПРИМЕР:
У меня есть имя сценария с именем Statuses.sql в папке 01-Tables, которая создает таблицу состояния, и сценарий с именем Add_Status.sql в 05-Data, который заполняет таблицу состояния. Я ожидал, что сначала будет выполнен Status.sql, а затем Add_Status.sql, поскольку "версия" каталога 01 идет раньше 05. Но то, что происходило, было тем, что Add_Status.sql выполнялся до создания таблицы состояния, потому что он обрабатывал каждый файл так, как если бы они находились в одном каталоге, 'A' идет перед 'S'

Вернуться в «C#»