实体框架提供程序加载失败
尝试在 TeamCity 上运行单元测试时,出现异常:“实体框架提供程序类型
'System.Data.Entity.SqlServer.SqlProviderServices,EntityFramework.SqlServer,无法加载“System.Data.SqlClient”ADO.NET 提供程序的 Version=6.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089'...”
解决方案
尽管项目中没有直接引用 System.Data.Entity, app.config 文件中存在特定配置设置可能会导致意外行为:
<entityFramework> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" /> </entityFramework>
此配置会强制运行时尝试加载实体框架提供程序,即使没有直接引用。
解决方案
要解决此问题,请确保所有涉及的可执行文件中都安装了 EntityFramework.SqlServer NuGet 包在测试过程中。此外,从 app.config 文件中删除entityFramework 部分,因为它不再是必需的。
以上是为什么我的单元测试失败并显示'实体框架提供程序类型...无法加载?”的详细内容。更多信息请关注PHP中文网其他相关文章!