当前位置: 首页>>代码示例>>C#>>正文


C# DbMigrator.GetDatabaseMigrations方法代码示例

本文整理汇总了C#中System.Data.Entity.Migrations.DbMigrator.GetDatabaseMigrations方法的典型用法代码示例。如果您正苦于以下问题:C# DbMigrator.GetDatabaseMigrations方法的具体用法?C# DbMigrator.GetDatabaseMigrations怎么用?C# DbMigrator.GetDatabaseMigrations使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Data.Entity.Migrations.DbMigrator的用法示例。


在下文中一共展示了DbMigrator.GetDatabaseMigrations方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: DbMigratorEventArgs

        public DbMigratorEventArgs(DbMigrationsConfiguration migrationConfiguration)
        {
            this.MigrationConfiguration = migrationConfiguration;

            DbMigrator migrator = new DbMigrator(migrationConfiguration);
            this.PendingMigrations = migrator.GetPendingMigrations();
            this.CompletedMigrations = migrator.GetDatabaseMigrations();
        }
开发者ID:TheOtherTimDuncan,项目名称:EntityFramework.DatabaseMigrator,代码行数:8,代码来源:DbMigratorEventArgs.cs

示例2: GenerateSqlUsingDbMigrator

 public static void GenerateSqlUsingDbMigrator()
 {
     using (var context = new AdventureWorksContext())
     {
         var configuration = new Configuration
             {
                 ContextType = typeof(AdventureWorksContext),
                 TargetDatabase =
                     new DbConnectionInfo(context.Database.Connection.ConnectionString, "System.Data.SqlClient")
             };
         var migrator = new DbMigrator(configuration);
         var migrations = migrator.GetDatabaseMigrations();
         if (migrations.Any())
         {
             var scriptor = new MigratorScriptingDecorator(migrator);
             string script = scriptor.ScriptUpdate(null, migrations.Last());
             if (!String.IsNullOrEmpty(script))
             {
                 Console.WriteLine(script);
                 //context.Database.ExecuteSqlCommand(script);
             }
         }                
         
         Console.ReadKey();
     }
 }
开发者ID:jeanhibbert,项目名称:EfTestConsole,代码行数:26,代码来源:EfDbMigrations.cs

示例3: Migrations

        public ActionResult Migrations(string errorMsg)
        {
            var configuration = new Configuration();
            var migrator = new DbMigrator(configuration);
            ViewBag.AppliedMigrations = migrator.GetDatabaseMigrations();
            ViewBag.PendingMigrations = migrator.GetPendingMigrations();
            ViewBag.ErrorMessage = errorMsg;

            return View();
        }
开发者ID:iloabn,项目名称:swetugg-web,代码行数:10,代码来源:DatabaseController.cs

示例4: PrintMigrationStatus

 private static void PrintMigrationStatus(DbMigrator migrator)
 {
     foreach (var applied in migrator.GetDatabaseMigrations())
     {
         Console.WriteLine("\tApplied: {0}", applied);
     }
     foreach (var pending in migrator.GetPendingMigrations())
     {
         Console.WriteLine("\tPending: {0}", pending);
     }
     Console.WriteLine();
 }
开发者ID:mitchdenny,项目名称:entity-framework-migrations,代码行数:12,代码来源:Program.cs

示例5: UpdateDatabase

        public static void UpdateDatabase(string connectionString)
        {
            var configuration = new Configuration
              {
            TargetDatabase = new DbConnectionInfo(connectionString, "System.Data.SqlClient")
              };

              var migrator = new DbMigrator(configuration);
              var pending = migrator.GetPendingMigrations().ToArray();
              var local = migrator.GetLocalMigrations().ToArray();
              var db = migrator.GetDatabaseMigrations().ToArray();
              migrator.Update();
        }
开发者ID:mattkur,项目名称:KCSARA-Database,代码行数:13,代码来源:Migrator.cs

示例6: Validate

        public ZsValidateItem Validate()
        {
            var result = new ZsValidateItem() { Title = _label };
            try
            {
                _migrationsConfiguration.TargetDatabase = new DbConnectionInfo(_connectionName);

                var migrator = new DbMigrator(_migrationsConfiguration);


                if (migrator.GetPendingMigrations().Any())
                {
                    result.State = ZsValidateState.Fail;
                    result.Description = "<b>Pending Migrations Found</b><br/>";
                    result.Description += "<ul>";
                    foreach (var migration in migrator.GetPendingMigrations().OrderBy(b => b))
                    {
                        result.Description += "<li>" + migration + "</li>";
                    }
                    result.Description += "</ul>";

                }
                else
                {
                    result.State = ZsValidateState.Ok;
                    result.Description = "<b>Migrations Up to Date</b><br/>";
                    result.Description += "<ul>";
                    foreach (var migration in migrator.GetDatabaseMigrations().OrderBy(b => b))
                    {
                        result.Description += "<li>" + migration + "</li>";
                    }
                    result.Description += "</ul>";
                }

            }
            catch (Exception ex)
            {
                result.State = ZsValidateState.Fail;
                result.Description = "Exception occurred: " + ex.Message;
            }
            return result;
        }
开发者ID:ChrisBriggsy,项目名称:SSW.HealthCheck,代码行数:42,代码来源:MigrationsZsValidateProvider.cs

示例7: GetMigrations

 public virtual IEnumerable<MigrationInfo> GetMigrations(String contextTypeName)
 {
     var contextType = GetContextType(contextTypeName);
     var configurationType = GetConfigurationType(contextType);
     
     var configuration = CreateConfiguration(configurationType);
     var migrator = new DbMigrator(configuration);
     
     var migrations = new Dictionary<String, MigrationInfo>();
     
     Func<String, MigrationInfo> getInfo = migrationId =>
     {
         MigrationInfo info;
         
         if (!migrations.TryGetValue(migrationId, out info))
         {
             info = new MigrationInfo { Id = migrationId };
             migrations.Add(migrationId, info);
         }
         
         return info;
     };
     
     foreach (var migrationId in migrator.GetDatabaseMigrations())
     {
         var info = getInfo.Invoke(migrationId);
         
         info.InDatabase = true;
     }
     
     foreach (var migrationId in migrator.GetLocalMigrations())
     {
         var info = getInfo.Invoke(migrationId);
         
         info.InProject = true;
     }
     
     return migrations.Values.OrderBy(i => i.Id);
 }
开发者ID:mcliment,项目名称:EF6.Commands,代码行数:39,代码来源:MigrationTool.cs

示例8: Main

        private static void Main(string[] args)
        {
            _logger = LogManager.GetCurrentClassLogger();
            _logger.Log(LogLevel.Info, "Версия: {0}", Assembly.GetEntryAssembly().GetName().Version);

            try
            {
                IndexUpdater indexUpdater = new IndexUpdater();
                indexUpdater.DeleteIndexForDroppingColumns(typeof(BloggingContext));

                using (BloggingContext context = new BloggingContext())
                {
                    if (context.Database.CompatibleWithModel(false))
                        _logger.Log(LogLevel.Info, "База данных успешно обновлена");
                    else
                        _logger.Log(LogLevel.Error, "Ошибка обновления базы данных: модель данных не соответствует базе данных");

                    indexUpdater.UpdateIndexes(context);
                }
                var dbMigrator = new DbMigrator(new MigrationsConfiguration());
                var databaseMigrations = dbMigrator.GetDatabaseMigrations().Reverse().ToList();
                if (databaseMigrations.Any())
                {
                    _logger.Log(LogLevel.Info, "Миграции в базе данных:");
                    foreach (var databaseMigration in databaseMigrations)
                    {
                        _logger.Log(LogLevel.Info, databaseMigration);
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.Log(LogLevel.Fatal, ex);
            }

            Console.ReadLine();
        }
开发者ID:Porokhnin,项目名称:EFIndexMaintenance,代码行数:37,代码来源:Program.cs

示例9: ListMigrations

		public void ListMigrations()
		{
			var config = FindDbMigrationsConfiguration();
			var migrator = new DbMigrator(config);
			foreach (var migration in migrator.GetDatabaseMigrations())
			{
				Console.WriteLine(migration);
			}
		}
开发者ID:RehanSaeed,项目名称:Migrator.EF6,代码行数:9,代码来源:Executor.cs


注:本文中的System.Data.Entity.Migrations.DbMigrator.GetDatabaseMigrations方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。