从c# .net 3.5连接本地数据库

本文关键字:数据库 连接 net | 更新日期: 2023-09-27 18:11:11

我们用。net 3.5创建了一个windows应用程序。当我在我的开发机器(安装的应用程序,而不是从VS)上运行它时,我可以使用服务器名连接到本地db数据库服务器:(localdb)'v11.0。当在客户端的计算机上启动时,我得到一个异常,当使用这个服务器名。当我使用命名管道服务器名时,我可以连接和查询数据库。

在我的开发机器上,我也可以从SSMS (Express) 2008 R2 SP2连接到(localdb)'v11.0。这也不能在客户端机器上工作。

有人知道客户端机器上缺少什么并且安装在我的开发机器上吗?

SSMS错误信息:


无法连接到(localdb)'v11.0.


这是一个网络的四个例子,具体来说是四个opgetreden的实例,这些实例可以使van绑定到SQL Server。该服务器是其用于创建数据库的服务器之一。示例中正确的控制器是在安装SQL Server外部绑定器时使用的控制器。(provider: sql - networkkinterfaces, error: 26 - Fout bij zoeken van opgegeeven server/example). Net SqlClient Data Provider)


有关帮助,请点击:http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=-1&LinkId=20476


错误编号:-1严重性:20状态:0

更新:

在management studio 2008 R2 SP2中执行以下查询时:

选择net_transport从sys.dm_exec_connectionsWHERE session_id = @@SPID;

结果:命名管道

所以SSMS不知何故知道使用命名管道连接到(localdb)'v11.0。当检查属性时,命名管道名称也在那里,并且以某种方式被检索。

普通sql - server(本地sqlexpress)在运行相同的查询时返回TCP,并且在查看属性时服务器名是可见的。

更新2:

阅读推荐(见评论)的帖子,有更多的人可以使用. net 3.5编译的程序连接。我也发现很多帖子说。net 4.0.3是必需的。由于Windows 7默认安装。net 4.5,我假设。net 4.0.3要求得到满足是正确的吗?

更新3:# # #

2014-12-22:同时在多台(用户)PC上进行了测试。在大多数个人电脑上,它的功能都是我所希望的。用户可以使用"(localdb)'v11.0"连接字符串进行连接。即使没有安装Visual Studio 2012。

可以是微软的可选更新来修复这个问题吗?如果有,是哪一个?

从c# .net 3.5连接本地数据库

看起来它在。net 3.5中被修复了,但只有在你安装了Visual Studio 2012的情况下。http://support.microsoft.com/kb/2664825

我在这里找到了一个单独的下载:http://thehotfixshare.net/board/index.php?showtopic=17253