【问题标题】:Could not connect to SQL Server localdb instance无法连接到 SQL Server localdb 实例
【发布时间】:2015-06-03 06:58:17
【问题描述】:

我已经安装了 SQL Server 2014 localdb 和 SQL Server Management Studio。我正在尝试使用在 Visual Studio 中开发的 WPF 应用程序连接到 localdb

这是我正在使用的连接字符串

<connectionStrings>
    <add name="ReservationContextString" 
         connectionString="Data Source=(localdb)\\MSSQLLocalDB;Initial Catalog=ReservationDB;AttachDbFilename=|DataDirectory|\\ReservationDB.mdf" 
         providerName="System.Data.SqlClient" />
</connectionStrings>

当我运行应用程序时,出现以下异常

EntityFramework.dll 中出现“System.Data.SqlClient.SqlException”类型的异常,但未在用户代码中处理

其他信息:在建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供者:SQL 网络接口,错误:26 - 错误定位服务器/指定实例)

我不确定为什么应用程序无法连接到localdb

注意:我可以使用 SQL Server Management Studio 连接到 localdb,使用 (localdb)\MSSQLLocalDB 作为服务器名称。所以,localdb 似乎安装正确。

【问题讨论】:

  • 我认为问题在于您正在 (1) 定义要在 LocalDB 实例中连接到 (Initial Catalog=ReservationDB) 的数据库,以及 ( 2) 定义要附加的 .mdf 文件 (AttachDbFilename=|DataDirectory|\\ReservationDB.mdf) - 您可以执行 其中一个 两者,但我不确定如果您执行 both 会发生什么 一下子。尝试一个另一个 - 有效吗?
  • @marc_s 在 SQL Server 配置管理器中,SQL Server 服务节点下没有列出任何服务。但是,我相信 localdb 实例未在此处列出。不确定这就是让您知道的原因。
  • 代码迁移 (update-database et al) see this answer.

标签: sql-server sql-server-express localdb


【解决方案1】:

就我而言,我必须先从 VS 内部创建数据库

然后一切都像魅力一样运作

【讨论】:

    【解决方案2】:

    troubleshooting guide 中汲取灵感,我能够解决这个问题。实体框架的 defaultConnectionFactory 应该指向一个 localdb 实例,但在 app.config(或 web.config)中,我将它设置为指向 SQL Server 实例。必须改为使用 localdb 实例。

    旧条目

      <entityFramework>
          <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
          </defaultConnectionFactory>      
          ....
      </entityFramework>
    

    应该是(新代码)

      <entityFramework>
        <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
            <parameters>
              <parameter value="MSSQLLocalDB" />
            </parameters>
          </defaultConnectionFactory>      
          ..      
      </entityFramework>
    

    注意 System.Data.Entity.Infrastructure.LocalDbConnectionFactory, 而不是 System.Data.Entity.Infrastructure.SqlConnectionFactory

    【讨论】:

      猜你喜欢
      • 2017-04-23
      • 2022-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-08
      • 1970-01-01
      相关资源
      最近更新 更多