private static MigrationSettings GetSettings(string[] args, string baseDir) { var configurations = new ConfigurationBuilder() .SetBasePath(baseDir) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) .AddEnvironmentVariables() .AddCommandLine(args) .Build(); var settings = new MigrationSettings(); settings.ConnectionString = configurations.GetValue <string>("ConnectionString"); return(settings); }
private static IMigrationRunner CreateRunner(string connectionString, MigrationSettings options) { var container = new ServiceCollection() .AddFluentMigratorCore() .ConfigureRunner(_ => _ .AddSqlServer() .WithGlobalConnectionString(connectionString) .ScanIn(typeof(Runner).Assembly).For.All()) .AddSingleton <MigrationSettings>(options) .AddSingleton <ScriptResourceManager>() .AddLogging(_ => _.AddFluentMigratorConsole()) .BuildServiceProvider(); return(container.GetRequiredService <IMigrationRunner>()); }