[英]Entity Framework exception after migrating WPF application to .net Framework 4.5.1
我已经将一个WPF复杂应用程序的.Net框架从3.5更新到了4.5.1。 我已将所有项目的目标框架更改为4.5.1。
更改.net框架后,出现以下错误。
System.Data.Entity.dll中发生了类型为'System.Data.EntityCommandCompilationException'的未处理异常
内部异常消息:-“ EntityContainer'ApplicationNameDataContext'的映射和元数据信息不再与用于创建预生成视图的信息匹配。”
有什么想法为什么会这样?
应用程序在VS2010和.Net frmwrk 3.5上运行良好。 项目具有System.Data.Entity Dll的4.0.0.0版本。
经过大量搜索后,我发现如果将edmx的所有Schema都更改回旧版本,它将开始工作。
右键单击edmx,使用文本编辑器将其打开,然后更改以下几行。
1.
<edmx:Edmx Version="3.0" xmlns:edmx="http://schemas.microsoft.com/ado/2009/11/edmx">
to <edmx:Edmx Version="1.0" xmlns:edmx="http://schemas.microsoft.com/ado/2007/06/edmx">
2.
<Schema Namespace="Application.Model.Store" Alias="Self" Provider="System.Data.SqlClient" ProviderManifestToken="2005" xmlns="http://schemas.microsoft.com/ado/2009/11/edm/ssdl">
to
<Schema Namespace="Application.Model.Store" Alias="Self" Provider="System.Data.SqlClient" ProviderManifestToken="2005" xmlns="http://schemas.microsoft.com/ado/2006/04/edm/ssdl">
3
<edmx:ConceptualModels> <Schema Namespace="Application.Model" Alias="Self" xmlns="http://schemas.microsoft.com/ado/2009/11/edm" annotation:UseStrongSpatialTypes="false" xmlns:annotation="http://schemas.microsoft.com/ado/2009/02/edm/annotation">
to
<edmx:ConceptualModels> <Schema Namespace="Application.Model" Alias="Self" xmlns="http://schemas.microsoft.com/ado/2006/04/edm" xmlns:annotation="http://schemas.microsoft.com/ado/2009/02/edm/annotation">
4
<edmx:Mappings>
<Mapping Space="C-S" xmlns="http://schemas.microsoft.com/ado/2009/11/mapping/cs">
to
<edmx:Mappings>
<Mapping Space="C-S" xmlns="urn:schemas-microsoft-com:windows:storage:mapping:CS">
5 And in <edmx:Designer> change
xmlns="http://schemas.microsoft.com/ado/2009/11/edmx to
xmlns="http://schemas.microsoft.com/ado/2007/06/edmx.
我不确定这是否是正确的方法,但可以为我解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.