我有2个项目A和B
每个项目都有自己的数据库,并使用实体框架连接到它,每个项目都很好
我的问题是,当我将项目B用作项目A中的库时,它给了我“(MYCLASS)的类型初始化程序引发异常”
你应该知道(MYCLASS):是项目B中的实体
答案 0 :(得分:2)
检查两个项目是否在app.config
中引用相同版本的entityframework。
您可能已经升级了项目B中的ef dll但未在项目A中升级。由于您在A中引用了B,所以entityframework在A中使用了两个项目中的配置。
答案 1 :(得分:1)
首先在所有项目中安装相同版本的EF,然后在App.config文件中检查以下内容,
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.3.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</configSections>
<connectionStrings>
<add name="SchedulingContext" connectionString="Data Source=XXX\SQL2008R2DEV;Initial Catalog=YYY;Persist Security Info=True;User ID=sa;Password=XXX" providerName="System.Data.SqlClient"/>
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>
答案 2 :(得分:0)
只需从ConfigSection中删除所有行
<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" />