public static void MigrateToLatest(string connectionString)
 {
     // var announcer = new NullAnnouncer();
     var announcer = new TextWriterAnnouncer(s => System.Diagnostics.Debug.WriteLine(s));
     var assembly = Assembly.GetExecutingAssembly();
     
     var migrationContext = new RunnerContext(announcer)
     {
         Namespace = typeof(MigrationsRunner).Namespace + ".Migrations"
     };
     
     var options = new MigrationOptions { PreviewOnly = false, Timeout = 60 };
     var factory = new FluentMigrator.Runner.Processors.SQLite.SQLiteProcessorFactory();
     using (var processor = factory.Create(connectionString, announcer, options))
     {
         var runner = new FluentMigrator.Runner.MigrationRunner(assembly, migrationContext, processor);
         runner.MigrateUp(true);
     }
 }
        public void Migrate(Action<IMigrationRunner> runnerAction)
        {
            var options = new MigrationOptions { PreviewOnly = false, Timeout = 0 };
            var factory = new FluentMigrator.Runner.Processors.SQLite.SQLiteProcessorFactory();
            var assembly = Assembly.GetExecutingAssembly();

            //using (var announcer = new NullAnnouncer())
            var announcer = new TextWriterAnnouncer(s => System.Diagnostics.Debug.WriteLine(s));
            var migrationContext = new RunnerContext(announcer)
            {
#if DEBUG
                // will create testdata
                Profile = "development"
#endif
            };

            using (var processor = factory.Create(connectionString, announcer, options))
            {
                var runner = new MigrationRunner(assembly, migrationContext, processor);
                runner.MigrateDown(0);
                runner.MigrateUp(true);
            }
        }