【问题标题】:datasource connection issue in asp.netasp.net中的数据源连接问题
【发布时间】:2013-05-23 11:03:04
【问题描述】:

我遇到了一个似乎不知从何而来的问题,我迷路了。

我使用的是 SQL Server 2012,并且能够使用默认连接连接到数据库,以便使用成员资格实体。

现在每当我尝试登录或注册时,都会收到以下错误:

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

在我看到的错误页面下方:

SQLExpress 数据库文件自动创建错误:

连接字符串指定一个本地 Sql Server Express 实例 使用应用程序的 App_Data 目录中的数据库位置。 提供者试图自动创建应用程序 服务数据库,因为提供商确定该数据库 不存在。以下配置要求是必要的 成功检查应用程序服务是否存在 数据库并自动创建应用服务数据库:

如果应用程序在 Windows 7 或 Windows Server 上运行 2008R2,需要特殊配置步骤才能启用自动 提供者数据库的创建。有更多信息可用 在:http://go.microsoft.com/fwlink/?LinkId=160102。如果 应用程序的 App_Data 目录尚不存在,web 服务器帐户必须具有对应用程序的读写权限 目录。这是必要的,因为 Web 服务器帐户将 如果尚未创建 App_Data 目录,则自动创建 存在。如果应用程序的 App_Data 目录已经存在,则 web 服务器帐户只需要对 应用程序的 App_Data 目录。这是必要的,因为网络 服务器帐户将尝试验证 Sql Server Express 数据库已存在于应用程序的 App_Data 目录中。 从 Web 服务器撤消对 App_Data 目录的读取访问权限 帐户将阻止提供者正确确定 Sql Server Express 数据库已经存在。这将导致错误 当提供者试图创建一个已经存在的副本时 现有数据库。需要写入权限,因为 Web 服务器 创建新数据库时使用帐户的凭据。 Sql 服务器 Express 必须安装在机器上。进程标识 Web 服务器帐户必须具有本地用户配置文件。见 自述文件了解如何创建本地用户配置文件的详细信息 机器和域帐户。

我没有运行 sqlexpress,并且在我的 webconfig 中没有任何地方指向 sqlexpress。

这是连接字符串代码的副本:

<add name="DefaultConnection" connectionString="Data Source=localhost;Initial Catalog=TheYogaDen;Integrated Security=True" providerName="System.Data.SqlClient"/>
    <add name="TheYogaDenEntities" connectionString="metadata=res://*/App_Code.DAL.TheYogaDenModel.csdl|res://*/App_Code.DAL.TheYogaDenModel.ssdl|res://*/App_Code.DAL.TheYogaDenModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=localhost;initial catalog=TheYogaDen;user id=YogaDBUser;password=Yoga!@#$;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

我能够使用该连接连接到 VS 服务器资源管理器中的数据库。但是,当我转到 ASP.net Web 配置工具并尝试测试我的提供程序时,它告诉我没有配置任何内容。我运行 aspnet_regsql 并配置数据库以进行连接,但错误仍然存​​在。

有什么想法吗?

【问题讨论】:

  • 我不完全确定为什么会发生这种情况......但我找到了解决方案,或者更确切地说是一种解决方法。我去测试了我正在做的另一个项目,并且连接工作正常。所以我复制了 webconfig 文件,对登录凭据进行了一些更改。不是最好的解决方案,但它确实有效。

标签: asp.net sql-server visual-studio-2010


【解决方案1】:

进入 SQL Server 配置管理器查看状态,全部开启。

【讨论】:

  • 所有都在运行......所有不需要 defaultConnection 的数据库连接都工作正常。我的表使用我的实体连接正确填充。
  • 查看SQL Server和Visual Studio的框架、版本,必须一致。将连接置于本地模式。
【解决方案2】:

签入服务> SQL Server (MSSQLSERVER) 启动此服务

【讨论】:

  • 如前所述.....所有服务都在运行。我可以使用自定义连接字符串进行连接,但不能使用默认连接。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-02
  • 2021-07-23
  • 1970-01-01
  • 2018-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多