我的机器上有一堆旧的/冲突的 SQL Server 命名实例,所以我删除了它们并决定创建一个新的 SQL Server 2016 Express 的默认实例。
这造成了无数的问题......
首先,我尝试在我的代码中运行我的迁移,但我得到了一个错误
无法添加数据连接。无法加载文件或程序集 Microsoft.SqlServer.management.sdk.sfc
经过一整天从 2016 和 2014 功能包中搜索和下载共享管理对象(无济于事)后,我终于尝试从 2012 功能包中下载它(如某处的一些小评论中所建议的那样),并且成功了 -我终于可以在服务器资源管理器中创建数据连接了!
但现在......我似乎仍然无法连接到正确的服务器。在服务器资源管理器中,列出了服务器,但未显示任何表。我也无法运行我的迁移。我收到此错误:
建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:SQL 网络接口,错误:26 - 错误定位服务器/指定的实例)
这是 Visual Studio 中的服务器资源管理器:
这是我app.config
文件中的连接字符串:
<connectionStrings>
<add name="DefaultConnection"
connectionString="data source=.\SQLEXPRESS; initial catalog=EFChallenge2; integrated security=SSPI"
providerName="System.Data.SqlClient"/>
</connectionStrings>
此外,SSMS 可以很好地连接到服务器。我可以毫无问题地创建数据库和表。
我将 SQL Server Express 的新默认实例命名为JenProWin
与之前命名的相同。Visual Studio 是否可以引用具有相同名称的旧命名实例?如果是这样,我该如何更新它?(注意:我已经尝试删除服务器并再次添加它 - 问题仍然存在。)