我可以以编程方式实例化一个命名的LocalDb实例吗?

时间:2012-11-16 20:46:45

标签: connection-string dbcontext localdb

我有一个使用LocalDb的WinForms应用程序。当然在我的开发盒上,这很好用。当我将应用程序部署到另一个框时,我收到以下错误消息:

“建立与SQL Server的连接时出现与网络相关或特定于实例的错误。”

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

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

对于已安装的实例,有没有办法以编程方式实例化一个命名的LocalDb实例或一种连接到默认LocalDb实例的方法?

是否可以以编程方式实例化一个名为LocalDb的实例?

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

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

1 个答案:

答案 0 :(得分:4)

实际上有两种方式:

    来自LocalDB API的
  1. LocalDBCreateInstance函数,用于本机C / C ++代码并通过PInvoke
  2. 应用程序的app.config中的
  3. system.data.localdb / localdbinstances element(仅限.NET应用程序,需要.NET 4.0.2或更高版本)