使用Entity Framework 6(采用代码优先方法),如果数据库不是最新的,则会出现异常
System.InvalidOperationException:“自创建数据库以来,支持'xxx'上下文的模型已更改。
是否可以检查数据库是否为最新版本,如果不是,则可以从应用程序内部将数据库更新为最新版本?
答案 0 :(得分:0)
使数据库与EF模型保持最新是至关重要的。
对于您对上下文模型所做的每次更改,都必须迁移到数据库。
要维护模型和数据库之间关系的完整性,您必须:
Add-Migration migrationName_versionx.x.x
Update-Database
您遇到的System.InvalidOperationException:
异常告诉您模型尚未迁移到数据库中。这意味着EF无法正常处理您可能遇到的查询。
您的数据库将保留一个迁移历史记录,可用于验证完整性。如果您有疑问,只需应用一个新的迁移,看看是否有任何更改。
答案 1 :(得分:0)
这可以通过DBMigrator类使用
Dim migrator = New DbMigrator(new migrations.Configuration())
migrator.Update()