我正在尝试调试我试图连接到本地 SQLServer DB 的 ASP.NET 页面,当我使用的连接字符串具有本地计算机的名称时,它可以正常工作,如下所示
string ConnectionString = "Integrated Security=SSPI;" +
"Initial Catalog=ARTICLEDB;" +
"Data Source=MYMACHINENAME\\MYSQLSVR;";
... 稍后的...
conn = new SqlConnection(ConnectionString);
// Open the connection
try
{
if (conn.State != ConnectionState.Open)
{
conn.Open();
//don't work here when using ##.##.##.##\MYSQLSVR as datasource
}
return true;
}
catch
{
return false;
}
当我使用 IP 机器作为 datadource 的值时,例如:###.###.###.###\\\MYSQLSVR
我得到一个异常说:
建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:SQL 网络接口,错误:28 - 服务器不支持请求的协议)
此问题源于尝试从 IIS 运行站点并在未打开连接的情况下出现类似错误。
如何在连接字符串中引用数据库以便 IIS 可以找到数据库?
我还尝试在 IIS 中为该站点添加连接字符串,但不确定如何从我的项目/站点中引用该 IIS 连接字符串