我试图使用预编译的视图以获得良好的性能,我成功地生成了视图,并且在编译时和运行时.edmx中的一切都是相同的。之前有默认连接工厂的mismtach数据提供程序,.edmx总是将SqlClient提供程序用于默认连接工厂,即使您将默认连接工厂更改为其他数据提供程序,但是当我注释掉该类的构造函数时,这种情况已被克服。继承DbContext之后,.edmx文件中的此连接提示符与我在app.config中的默认连接工厂中指定的相同。 因此,在生成的.Edmx和运行时.edmx。
的编译时,everthing是相同的但是当我在编译时生成视图并使用视图来优化性能时 ,当我调用dbcontext.SaveChanges()
时,抛出异常“EntityContainer'DatabaseContext'的映射和元数据信息不再与用于创建预生成视图的信息匹配。”
以上异常表明存在一些错误,但我检查了edmx,一切都是一样的。那有什么问题呢。或者我已经完成了这个
pre-compiled view not affecting performance
因为它暗示了不同的装配问题。所以,对于我的情况,我有一个project1,它有很少的POCO类和不同的project2引用project1并使用project1的POCO类,DbContext类已在project2中定义,我正在为project2生成视图,那究竟是什么问题 在此先感谢您的帮助