得到错误:
System.Data.ProviderIncompatibleException:从数据库获取提供者信息时出错。这可能是由 Entity Framework 使用不正确的连接字符串引起的。
检查内部异常以获取详细信息并确保连接字符串正确。
---> System.Data.ProviderIncompatibleException:提供程序未返回 ProviderManifestToken 字符串。
---> System.Data.SqlClient.SqlException:建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:SQL 网络接口,错误:25 - 连接字符串无效)
尝试执行操作时出现相同的错误Add-Migration
这是我的连接字符串,我需要访问我的本地 SQL 服务器而不是 SQLEXPRESS。
<connectionStrings>
<add name="ReaderInsightDbContext"
connectionString="data source=localhost\MSSQLSERVER;
initial catalog=ReaderInsight;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
我的数据库位于:
C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA
所以我的实例是 MSSQLSERVER。不知道发生了什么。它首先工作得很好,但是在我更改我的代码以使用 UOW 模式之后,这种情况正在发生。我还从 EF 4.3 升级到了 EF5。同样的问题。
我在连接字符串中尝试了许多数据源的变体,都没有工作,这里有一些例子:
- 本地主机\MSSQLSERVER
- .\MSSQLSERVER
- //本地主机\MSSQLSERVER
- (本地)\MSSQLSERVER
- 127.0.0.1\MSSQLSERVER
如果我这样做 .\SQLEXPRESS 它可以工作。