拥有类库和WPF应用程序,并尝试包含类库中的所有Entity Framework项,并使用接口来获取信息。一切都已设置,但每次尝试时都会收到此消息:
消息“'System.Data.Entity.Internal.AppConfig'的类型初始值设定项引发异常。”
当我查看内部异常时,它似乎无法找到EntityFramework的5.0.0.0版本,当我检查它的参考时,它是4.4.0.0。尝试通过NuGet卸载并重新安装EntityFramework,但没有运气。关于下一步该尝试的任何想法?
App Config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
</entityFramework>
</configuration>
答案 0 :(得分:4)
我认为这是你app.Config的一个问题,因为你可能没有以下内容:
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
</entityFramework>
这需要在您的应用程序入口点的配置文件中(无论可执行文件/ webapp正在运行/使用您的类库)
需要注意的一个关键细节是EF4.4是在EF5软件包中发布的,用于非.NET 4.5应用程序(例如,如果你有.net 4.5,你的引用将是5.0,否则将使用.net 4它将是4.4)
答案 1 :(得分:2)
卸载EntityFramework
将类库更新为.Net版本4.5
重新安装EntityFramework
现在一切正常。
答案 2 :(得分:1)
我尝试将网络配置中的EF版本更改为项目中当前安装的EF版本,一切顺利。