【发布时间】:2021-02-22 14:00:44
【问题描述】:
我有一个 ASP.NET MVC 应用程序,但我无法连接到我的机器上托管的本地 SQL Server 数据库。
我收到以下错误:
与 SQL Server 建立连接时出现与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供者:SQL 网络接口,错误:50 - 发生本地数据库运行时错误。无法创建自动实例。有关错误详细信息,请参阅 Windows 应用程序事件日志。 )
我最近在原始 SQL Server 安装之上安装了 SQL Server Express;由于发生了这种情况,应用程序现在永远无法连接到数据库。当我通过 Visual Studio 进行调试时,我的应用程序在本地 IIS 和管理员下运行。
我尝试过的事情:
- 我已尝试删除 Microsoft 文件夹中的本地数据库并重新创建它们
- 我试过运行“sqllocaldb start”命令,它已经启动了
- 我已尝试停止 SQL 服务并重新启动它们
- 我已尝试在有权访问数据库的用户下运行应用程序池
- 我通过创建数据模型测试了与应用程序的连接,它可以做到
- 我已尝试将具有完全控制权的所有人组应用到实例文件夹
- 我已尝试授予对数据库表的公共访问权限
- 我已尝试删除并重新创建数据库
我在 SQLLocalDB15.0 下的计算机管理中收到以下错误:
在图片文件中找不到指定的资源语言ID。
无法获取本地应用程序数据路径。很可能未加载用户配置文件。如果在 IIS 下执行 LocalDB,请确保为当前用户启用配置文件加载。
我的连接字符串如下:
<add name="Entities" connectionString="metadata=res://*/Models.DataModel.csdl|res://*/Models.DataModel.ssdl|res://*/Models.DataModel.msl;provider=System.Data.SqlClient;provider connection string="data source=(localdb)\MSSQLLocalDB;initial catalog=DatabaseName;integrated security=True;persist security info=True;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
我的机器上安装了以下SQL的东西,不知道这里有没有效果:
【问题讨论】:
-
您要连接到 SQL Express 实例还是 LocalDB 实例?您最初安装的 SQL 是哪个版本?该错误表明您正在尝试连接到与 SQL Express 不同的 LocalDB。
-
我想连接到我的 LocalDB,我在连接字符串中使用以下内容:Server=(localdb)\MSSQLLocalDB
-
mdf 文件是否附加到服务器? LocalDb 仅适用于 mdf 未连接到服务器的情况。服务器拥有该文件并阻止用户直接连接到 MDF。错误说“不可访问”,这意味着服务器拥有文件并阻止连接。
-
@squillman 已更改但仍有错误
-
@jdweng 如何查看文件是否已附加?
标签: c# asp.net sql-server entity-framework