【发布时间】:2016-05-16 18:11:59
【问题描述】:
我已经将我的 WCF 项目发布到服务器上,我还在使用 WCF 服务的同一个盒子上发布了一个 MVC 应用程序。
在我的 MVC 应用程序上尝试登录时,它使用了 wcf 服务,但我在浏览器上得到了这个异常,
实体框架提供程序类型 'System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer' 在应用程序配置文件中注册 对于具有不变名称“System.Data.SqlClient”的 ADO.NET 提供程序 无法加载。确保程序集限定名称是 并且该程序集可用于正在运行的应用程序。
这是一个实体框架异常,但我假设由于我的项目已经在开发环境中引用了 EF,因此在部署服务项目后,DLL 也应该包含 EF 引用,但我不确定为什么会出现此错误。
我可以看到这条消息是因为我打开了includeExceptionDetailInFaults="True"
【问题讨论】:
-
从 NuGet 包管理器安装导致项目中未正确安装。再试一次 PM> Install-Package EntityFramework
-
正如我所提到的,这不在我的本地机器上,这是在我没有安装 Visual Studio 的服务器上。这是一个抛出此错误的已发布应用程序,它在我的本地计算机上运行良好。 @NazmulHasan
-
删除 bin 文件夹并清理/重建您的解决方案,正如我在 my answer to another similar question 中所建议的那样。
标签: c# asp.net-mvc entity-framework wcf publish