使用IP地址时ASP.NET连接字符串错误

时间:2013-09-26 14:37:06

标签: c# asp.net sql-server iis connection-string

我正在尝试调试我尝试连接到本地SQLServer数据库的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机器作为数据源的值,例如:###.###.###.###\\\MYSQLSVR时,我得到一个异常说:

  

发生与网络相关或特定于实例的错误   建立与SQL Server的连接。找不到服务器或   无法访问。验证实例名称是否正确   SQL Server配置为允许远程连接。 (提供者:SQL   网络接口,错误:28 - 服务器不支持请求   协议)

此问题源于尝试从IIS运行站点并在未打开连接时收到类似错误。

如何在连接字符串中引用数据库,以便IIS可以找到数据库?

我还尝试在IIS中为网站添加连接字符串,但不确定如何从我的项目/网站引用该IIS连接字符串

2 个答案:

答案 0 :(得分:1)

转到SQL Server配置管理器并启用“命名管道”和“TCP / IP”

,您的连接字符串应如下所示

Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;
Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;

http://www.connectionstrings.com/sql-server-2008

答案 1 :(得分:0)

检查以下内容对我有用。

Data Source=190.190.200.100,1433;Initial Catalog=DBName;Integrated Security=False;user id=userid;password=password