“/student1”应用程序中的服务器错误。
在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.SqlClient.SqlException: 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)源错误: 
行 176: //创建一个连接实例
行 177: Connection = new SqlConnection(sConnectionString);
行 178: Connection.Open();
行 179:     
行 180: }
 源文件: C:\Inetpub\wwwroot\student1\CCUtility.cs    行: 178 堆栈跟踪: 
[SqlException (0x80131904): 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)]
   System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +800131
   System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +186
   System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection owningObject) +737554
   System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject) +114
   System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart) +421
   System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) +181
   System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) +173
   System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection) +357
   System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options) +30
   System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) +424
   System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) +66
   System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) +494
   System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) +82
   System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +105
   System.Data.SqlClient.SqlConnection.Open() +111
   student1.CCUtility.DBOpen() in C:\Inetpub\wwwroot\student1\CCUtility.cs:178
   student1.CCUtility..ctor(Object parent) in C:\Inetpub\wwwroot\student1\CCUtility.cs:82
   student1.Default.Page_Load(Object sender, EventArgs e) in C:\Inetpub\wwwroot\student1\default.aspx.cs:93
   System.Web.UI.Control.OnLoad(EventArgs e) +99
   System.Web.UI.Control.LoadRecursive() +47
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1436 
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.1433; ASP.NET 版本:2.0.50727.1433 

解决方案 »

  1.   

    Connection = new SqlConnection(sConnectionString); 
    行 178: Connection.Open(); 

    把你的sConnectionString拿来看看,
    连接字符串可能有问题
      

  2.   

    解决方法:开始->>SQLServer2005->>配置工具->>SQLServer外围应用配置器->>服务和外围连接的应用配置器->>点击"远程连接"->>本地连接和远程连接->>同时使用TCP/IP和named Pipes->>点"确定"->>重启SQLserver服务
      

  3.   

    我是刚开始学习,所以好多不懂,不知道找的对不对。见笑了!
    二楼的方法我用过,但是还解决不了。//打开数据库连接
    public void DBOpen()
    {
    //从Web.Config中获取连接数据库字符串  
    string sConnectionString = ConfigurationSettings.AppSettings["SQLConnectionString"];
    //创建一个连接实例
    Connection = new SqlConnection(sConnectionString);
    Connection.Open();
        
    }
    //关闭数据库连接
    public void DBClose()
    {
    Connection.Close();
    }
      

  4.   


    解决方法:开始->>SQLServer2005->>配置工具->>SQLServer外围应用配置器->>服务和外围连接的应用配置器->>点击"远程连接"->>重启SQLserver服务红色对话框里面有个选项,“允许远程连接” 构选后重启
    没有环境参考,lz自己找找把,抱歉
      

  5.   

    我记得在我用的速成版就一直连不上 同样的代码在企业版的数据库中就可以
    用webconfig sConnectionString连接不上 也不知道为什么 后来改了连接方式就好了 
      

  6.   

    参考:http://blog.csdn.net/insus/archive/2008/04/03/2247318.aspx
      

  7.   

    lz把web.config中的数据库连接串拼出来看看
      

  8.   

    肯定是连接串有问题,修改web.config中的数据库连接串
      

  9.   

    我也出现过这样的问题,你看看Web.config文件里的配置,
    <connectionStrings>
          <add name="DB_ConnectionString" connectionString="Data Source=(local)这是本地服务器,也可以是其他的服务器;User ID=sa;Password=;Initial Catalog=这里是你的数据库名" providerName="System.Data.SqlClient" />
        </connectionStrings>
    中文部分是解释,User ID是你数据库的用户名,Password是密码,只要正确配置就能解决了。
      

  10.   

    在iis默认网站的属性中,把全局配置和局部配置中的连接字符串删除即可