我正在使用 EF 4.3,并且有一个上下文需要与另一个库使用 EF Code First 4.3 生成的数据库对话。上下文抛出异常说明
The model backing the 'Context' context has changed since the database was created. Consider using Code First Migrations to update the database
在 EF 4.1 中,这可以通过从模型构建器中删除 IncludeMetadataConvention
来禁用。但是,在 4.3 中,此约定已被弃用,不再有效。
如何让 EF 4.3 上下文与 由不同上下文构建的 EF 4.3 生成的数据库对话?我找到的唯一选择(远非理想)是删除元数据表,从而导致两个上下文假定数据库不是由 EF 构建的。
PS:我知道这种情况可能会引发关于为什么我需要这样做的问题;我知道这远非理想,但请放心,这是我需要解决的问题,并且可供横向处理的选项有限。
最佳答案
将初始化程序设置为 null
将跳过模型兼容性检查。
Database.SetInitializer<MyContext>(null);
关于c# - 如何在 Entity Framework 4.3 中禁用模型兼容性检查?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10623260/