为什么从实体框架连接到SQL server 2014时出现网络相关错误

本文关键字:网络 错误 2014时 server 实体 框架 连接 SQL 为什么 | 更新日期: 2023-09-27 18:14:06

我正在尝试从实体框架和MVC API连接到本地SQL Server 2014,但出现以下错误:

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

我已经在谷歌上搜索了几个小时来解决这个问题,并做了以下事情:

  • 已打开防火墙中的端口1433
  • 已检查SQL Server配置管理器以确认所有服务运行良好
  • 允许从SQL Server Management Studio进行远程连接

我可以通过从DB生成模型来创建实体模型,但当我运行API和控制器试图连接(模型(LINQ时,它会抛出上述错误。

这是一段代码抛出错误:

         public int GetNextIdDocumenti()
      {
        int id = 0;
        using (var dbCtx = new USDevEntities())
        {
            dbCtx.Database.Connection.Open();//I'm getting error here
            var lastrecord = dbCtx.Documentis.OrderByDescending(x => x.IDDoc).Take(1).FirstOrDefault();  // At first I was getting error here then I've added the previous line
            if (lastrecord == null)
            {
                id = 1;
            }
            else
            {
                id = lastrecord.IDDoc + 1;
            }
            dbCtx.Database.Connection.Close();
            return id;
        }
    }

请建议我现在还能做什么。

更新

  connectionString="metadata=res://*/Entity.EntityModel.csdl|res://*/Entity.EntityModel.ssdl|res://*/Entity.EntityModel.msl;provider=System.Data.SqlClient;provider connection string="data source=(LocalDB)'MSSQLLocalDB;attachdbfilename=|DataDirectory|'USDev.mdf;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient"

目前我正在使用附加的DB来避免这个错误,但仍然会出现同样的错误。因此,我的连接字符串反映了上面附加的DB。

为什么从实体框架连接到SQL server 2014时出现网络相关错误

您的服务器名称(LocalDB)正确吗?sql实例名称MSSQLLocalDB怎么样?你能使用这些配置从Ssm连接到数据库吗?