从数据库获取提供者信息时出错。这可能是由 Entity Framework 使用不正确的连接字符串引起的。检查内部异常以获取详细信息并确保连接字符串正确。
内部异常:{"The provider did not return a ProviderManifestToken string."}
我搜索了其他线程,因为有很多类似的错误,但我似乎找不到解决方案。
我正在使用 VS2012 Professional 和 SQL Server 2012。我可以使用 Windows 身份验证使用服务器资源管理器连接到服务器。我正在构建一个具有多层的网络表单应用程序。其中之一包含我的实体框架层,其中包含我的 Context 类。
<?xml version="1.0"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
</system.web>
<connectionStrings>
<add name="MYSQLSERVER"
providerName="System.Data.SqlClient"
connectionString="Data Source=myComputer\MYSQLSERVER;Trusted_Connection=true"></add>
</connectionStrings>
</configuration>
这就是我的实体框架类库层中的 app.config 的样子。
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="v11.0" />
</parameters>
</defaultConnectionFactory>
</entityFramework>
</configuration>
另外,我尝试将 app.config defaultConnectionFactory 类型更改为
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework">
但它没有改变任何东西。
我不确定我所做的任何改变意味着什么让我担心。当然,我可以在网上找到解决方案并解决了我的问题,但我真的很想了解 web.config 以及这一切意味着什么。除了找到解决此问题的方法之外,任何人都可以指出我学习 web.configs 的正确方向吗?
提前感谢您的帮助。