当前位置: 首页 > 知识库问答 >
问题:

实体框架-检查挂起的迁移

萧升
2023-03-14

在我们的生产环境中,我们有一个自动部署脚本,可以关闭站点,运行迁移,然后使其重新联机。我们希望在不需要运行任何迁移的情况下,通过切换到新代码来避免关闭站点。

实体框架是否有像“更新数据库”这样的命令,允许我们检查是否有迁移要运行?

共有2个答案

柯昆杰
2023-03-14

我使用DbContext。数据库。与EF 6.1.3兼容

厉熠彤
2023-03-14

DbMigrator类具有GetPendingMigrations方法,听起来就像您要找的方法。它应该是类似于

YourMigrationsConfiguration cfg = new YourMigrationsConfiguration(); 
cfg.TargetDatabase = 
   new DbConnectionInfo( 
      theConnectionString, 
      "provider" );

DbMigrator dbMigrator = new DbMigrator( cfg );
if ( dbMigrator.GetPendingMigrations().Any() )
{
   // there are pending migrations
   // do whatever you want, for example
   dbMigrator.Update(); 
}
 类似资料:
  • 我的迁移搞砸了,我在初始迁移时使用了,但现在我想删除所有的迁移,并从具有所有逻辑的初始迁移开始。 当我删除文件夹中的迁移并尝试时,它不会生成完整的文件(它是空的--因为自从上次(现在已删除)迁移以来,我没有做任何更改)。 是否有Disable-Migrations命令,以便我可以重新运行?

  • 问题内容: 我正在将子系统从 NHibernate 移植到 Entity Framework, 并希望看到将以下查询移植到 EF 的最佳方法。 帐户余额类别为: 该表是: 示例数据是(使用数字ID可以更好地理解): 该 AccountBalanceByDate 实体持有某一天的账户余额。如果某天没有交易,则该天将没有 AccountBalanceByDate ,我们应该查看前几天以查看该帐户的余额

  • 只有当解决方案具有多个引用EntityFramework的项目时,才会出现下面粘贴的错误。当运行“启用-迁移”或“添加-迁移”时,我收到以下错误:

  • 我已将数据注释添加到ASP中的一个模型中。NETMVC应用程序。创建迁移后,运行命令会导致以下错误: 无法将值NULL插入表“MOVICES”的“Director”列中。dbo。电影;;列不允许空值。更新失败。声明已终止。 这是由于某些记录的列中有NULL。如何将这些值自动更改为某个默认值(例如“John Doe”)控制器? 这是我的模型: 以下是我的最新迁移:

  • 我正在实现一个基于ASP MVC 5和Entity Framework 6的Web应用程序。解决方案是按区域组织的(目前只有一个区域…)每个区域都有自己的DBContext。请参见解决方案图。 在DBContext中,我定义了一个在运行时分配给上下文的连接字符串名称,因为它依赖于登录变量。 当我尝试添加迁移或从控制台更新数据库时,即使我显式指定了连接字符串(并且连接字符串存在于主web.confi

  • New in Django 1.7. 系统检查框架是为了验证Django项目的一系列静态检查。它可以检测到普遍的问题,并且提供如何修复的提示。这个框架可以被扩展,所以你可以轻易地添加你自己的检查。 检查可以由check命令显式触发。检查会在大多数命令之前隐式触发,包括runserver 和 migrate。由于性能因素,检查不作为在部署中使用的WSGI栈的一部分运行。如果你需要在你的部署服务器上运