public HatCMSMigrator() { string assemblypath = System.Web.Hosting.HostingEnvironment.MapPath("~/Deploy/MyMigrations.dll"); Assembly migrationAssembly = Assembly.LoadFrom(assemblypath); string provider = "MySql"; string connectionString = "Data Source=localhost;Database=hatcms_test;User Id=hatcms;Password=hatcms"; migrator = new Migrator.Migrator(provider, connectionString, migrationAssembly); }
public IEnumerable<string> RunAllMigrations() { var writer = new ToBufferLogWriter(); var logger = new Logger(true, writer); logger.Trace("Providers:"); foreach (var provider in Providers.Distinct()) { logger.Trace("* {0} ({1})", provider.MigrationContext, provider.GetType().Name); } string connectionString = null; foreach (var name in new[] { "KindjesNetMigrations", "KindjesNet" }) { if (ConfigurationManager.ConnectionStrings[name] != null) { connectionString = ConfigurationManager.ConnectionStrings[name].ConnectionString; break; } } if (connectionString == null) throw new ArgumentNullException("connectionString"); foreach (var provider in Providers.Distinct()) { try { logger.Trace("Migrations for {0} with context {1}...", provider.Assembly.FullName, provider.MigrationContext); var migrator = new Migrator.Migrator( provider.MigrationContext, ProviderFactory.Create(provider.TransformationProviderName, connectionString), provider.Assembly, true, logger); migrator.MigrateToLastVersion(); } catch (Exception ex) { logger.Exception("Migration exception", ex); } } return writer.GetEntries(); }
public HatCMSMigrator(string provider, string connectionString, string pathtomigrationAssembly) { Assembly migrationAssembly = Assembly.LoadFrom(pathtomigrationAssembly); migrator = new Migrator.Migrator(provider, connectionString, migrationAssembly); }