以下是从 ASP.NET 应用程序建立数据库连接时遇到问题时要执行的步骤清单
- 您可以从 ASP.NET 服务器 ping 数据库服务器吗?
- 您可以使用来自 ASP.NET 服务器的 SQL 身份验证和 Management Studio 连接到数据库吗?
- 使用非常简单的小回报查询编写一个页面以用作测试。可以用测试页查询数据库吗?不要依赖任何 web.config 条目,手动输入所有连接字符串和查询数据(不要将此测试页面留在服务器上超过测试所需的时间)
- 如果您的测试页失败,错误是什么?如果您从 ASP.NET 服务器控制台进行测试,您应该会得到一个可能表明问题的详细错误。
- 如果您有多个服务器数据库,请绝对确保您连接到您认为的服务器;)
一般提示:Management Studio 可能是最好的测试 - 如果您可以通过 Management Studio 从 ASP.NET 服务器通过 Windows 和 SQL 身份验证进行连接,那么问题一定出在您的 ASP.NET 应用程序配置上。
您提到您收到“COMPANY\name”未授权的显式身份验证错误。你在运行域控制器吗?“COMPANY”是域名吗?如果没有,ASP.NET 可能没有使用您的域帐户对数据库进行身份验证。
如果您必须使用 Windows 授权,请记住在 web.config 中启用模拟:
<identity impersonate="true" />
您还需要在您的站点的 IIS 配置中禁用匿名访问并启用集成安全性。
HTH。