我使用Asp。Net Identity 2.0.1.
如果我将数据库从一个开发环境复制到另一个开发环境,我会得到以下错误。当我登录到我的应用程序()。
支持'ApplicationDbContext'上下文的模型自数据库创建以来已经更改.....
这是两台独立的机器(machine1和machine2),两台机器上的数据库连接都是正确的,但是在首次生成identitymodel的开发环境(machine1)上没有问题。但是在机器2上,我得到上面的错误。(我的ApplicationDbInitializer设置为CreateDatabaseIfNotExists而不是DropCreateDatabaseIfModelChanges)
Identity在定义Model时是否使用MAC地址?如果是这样,有没有办法解决这个问题?
经过进一步的调查,我意识到我的假设是错误的。两台机器上的实体框架包版本不同。一个用EntityFramework.6.1.1-alpha1-30211
,另一个用EntityFramework.6.1.1-alpha1-30429
。我在_MigrationHistory
表中发现了这一点,我试图改变machine2上的_MigrationHistory
表中的ProductVersion字段以匹配其EntityFramework的版本,但这不起作用,所以我回滚了参考版本,它起作用了。
然而奇怪的行为。这意味着小版本或补丁的EntityFramework将需要重建/更改代码优先数据库?