STW*_*STW 39 .net c# entity-framework entity-framework-4.3
我正在使用EF 4.3并且有一个上下文需要与使用EF Code First 4.3的另一个库生成的数据库进行通信.上下文抛出一个异常说明
自创建数据库以来,支持"上下文"上下文的模型已更改.考虑使用Code First Migrations来更新数据库
在EF 4.1中,可以通过IncludeMetadataConvention
从模型构建器中删除它来禁用它.但是,在4.3中,该约定已被弃用,不再具有效果.
如何将EF 4.3上下文与由不同上下文构建的EF 4.3生成的数据库进行对话?我发现的唯一选择(远非理想)是删除元数据表,从而导致两个上下文都假设数据库不是由EF构建的.
PS:我知道这种情况可能会引发我为什么需要这样做的问题; 我知道这远非理想,但请放心,这是一个我需要解决的问题,而且横向合作的选择有限.
bri*_*lam 69
将初始化程序设置为null
将跳过模型兼容性检查.
Database.SetInitializer<MyContext>(null);
Run Code Online (Sandbox Code Playgroud)
Die*_*ira 15
适用于EF 4.3或更高版本
Database.SetInitializer<MLTServerWatcherContext>(null);
Run Code Online (Sandbox Code Playgroud)
或者如果使用旧版EF
modelBuilder.Conventions.Remove<IncludeMetadataConvention>();
Run Code Online (Sandbox Code Playgroud)
(我知道他说他使用的是EF 4.3,但我觉得这个选项也很好用)
归档时间: |
|
查看次数: |
14340 次 |
最近记录: |