未找到实体框架数据提供程序,entityclient

Per*_*rry 4 entity-framework web-config dataprovider asp.net-mvc-4

首先,我发现许多问题和许多答案相关或认为与我的问题完全相同,但似乎没有什么对我有用.

我有一个全新的模板MVC4网站,一个全新的安装sql server 2008 r2的数据库.我在数据库上运行aspnet_regsql并创建了我创建的.edmx模型的所有表,该模型在我的web.config中生成了connectionstring.

<connectionStrings>
  <add name="TestEntities" connectionString="metadata=res://*/Models.Test.csdl|res://*/Models.Test.ssdl|res://*/Models.Test.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=WEBSRV\SQLEXPRESS;initial catalog=Test;persist security info=True;user id=Test;password=Test#1337;multipleactiveresultsets=True;App=EntityFramework&quot;"  providerName="System.Data.EntityClient" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

建立网站会返回错误 Unable to find the requested .Net Framework Data Provider. It may not be installed.

我的机器没有自我关闭.<DbProviderFactories/>在我在Visual Studio网站主机或我的网络服务器的IIS上本地运行网站时,会出现同样的问题.我没有安装任何NuGet包

为什么我会收到此错误?

Per*_*rry 8

是的,我弄明白了这个问题.

您不能将该连接字符串用于除edmx连接之外的任何其他内容.我在web.config中使用它的方式使得网站也使用相同的连接字符串作为成员资格的东西,这与System.Data.EntityClient提供程序不兼容,并且在我的情况下需要System.Data.Sqlclient.添加第二个连接字符串,减去其中的实体框架内容并使用web.config中的成员资格提供程序属性引用该连接字符串将删除所有错误,并允许页面从SQL服务器呈现和请求内容.

噩梦结束,可以回到我的网站上工作.O /

  • 是否可以发布一些(示例)代码? (2认同)