2012-11-16 136 views
6

我有一个使用LocalDb的WinForms应用程序。当然,在我的开发框中,这工作正常。将应用程序部署到另一个框时,出现以下错误消息:我可以编程实例化一个指定的LocalDb实例吗?

“与SQL Server建立连接时发生网络相关或实例特定错误。”

我已经在这个问题上经历了Stackoverflow上的许多帖子 - 大多数似乎与连接字符串有关。

我遇到的一个问题是,在我的开发框中,我启动了一个名为LocalDb的实例。在我的安装目标上,我正在运行LocalDb安装MSI。

对于已安装的实例,是否有一种编程实例化名为LocalDb的实例或连接到默认LocalDb实例的方法?

是否有可能以编程方式实例化一个指定的LocalDb实例?

或者我可以使用(localdb)\ v11.0创建一个可以用来打开我的LocalDb数据库的连接字符串;

我也在开发中使用DbContext - 再次在开发框中,LocalDb和DbContext正常工作。 DbContext和EF的使用是否会影响目标框上的LocalDb连接字符串?

回答

4

有两种方式实际上是:来自API的LocalDB

  1. LocalDBCreateInstance功能,原生的C/C++代码,并通过PInvoke的
  2. system.data.localdb/localdbinstances element在您的应用程序的app.config(.NET应用程序而已,需要.NET 4.0.2或更高版本)
+0

Krztsztof - 非常感谢! - 它也看起来像通过我需要在安装中包括.Net 4.5以支持此.. –

+0

正确,如果你想要去与app.config你需要.NET 4.0.2或更高版本 –

+0

谢谢Krzysztof - 你会能够指向我的示例app.config LocalDb?它看起来像我已经清除了这个问题,但遇到一个错误“AttachDbFilename的无效键值” –

相关问题