Отметьте этот другой вопрос , который показывает некоторый код, позволяющий вам проверить, есть ли ожидающие миграции.Вполне возможно, что в MSBuild настроена цель для запуска этого кода и выхода из цели, если она возвращает одну или несколько доступных миграций.
Вот базовый код консольного приложения, которое собирает коддругого вопроса.Он просто пишет сообщение в окно консоли, если миграции доступны или нет.Вам нужно будет расширить его до того, что вам нужно, но оно должно работать.TestMigration1
должен быть заменен одним из ваших классов миграции в сборке, где находятся ваши миграции.Очевидно, вам нужно будет сделать ссылку на этот проект из консольного приложения.
internal class Program {
private static void Main(string[] args) {
Assembly asm = Assembly.GetAssembly(typeof (TestMigration1));
const string myConnectionString =
"Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;";
ITransformationProvider provider = ProviderFactory.Create("SqlServer", myConnectionString);
var loader = new MigrationLoader(provider, asm, false);
List<long> availableMigrations = loader.GetAvailableMigrations();
Console.WriteLine(availableMigrations.Count > 0 ? "Migrations available" : "No migrations");
}
}