在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)

解决方案 »

  1.   

    1. 打开Sql Server 2005 “配置工具” 中的“SQL Server 外围应用配置器”,点击“服务和连接的外围应用配置器”;2. 在出来的界面中点击“Database Engine”中的“远程连接”,把连接方式改为“本地连接和远程连接”中的“同时使用tcp/ip和name pipes”;3 对于企业版,默认的端口是动态端口,可以在SQL Server Configuration Manager 中 “SQL Server 2005网络配置->MSSQLServer的协议->TCP/IP” 修改TCP端口4. 重新启动SQL SERVER 服务
      

  2.   

    <connectionStrings>
        <add name="ConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\db_BBS.mdf;Integrated Security=True;User Instance=True"
          providerName="System.Data.SqlClient" />
      </connectionStrings>
      

  3.   

    我是说你数据库版本
    看上面的会复你用的像05啊,如果是的话连接串用SQLEXPRESS会有问题的
      

  4.   

    是SQL 2005
    那连接字符串应该怎么修改呢:)
      

  5.   

    connectionString="Data Source=localhost;Initial Catalog=db_BBS;Integrated Security=True"
    拿这个去试试好了
      

  6.   

    首先判定你的数据库连接字符串  是否正确,如果正确的话,才看下面的
    正常的数据库连接字符串配置,这是在MSSQL服务器端口是1433(默认)的情况下。
    <add key="Article" value="server=.;uid=Admin;pwd=admin;database=db;"></add>但是有时候,为了数据库服务器安全,这个端口会被改成其它的,这时再连接数据库可能报出以下错误:在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)这时只需要把端口号加上就可以了:
    <add key="Article" value="server=.,端口号;uid=Admin;pwd=admin;database=db;"></add>端口修改方法:
    “开始”-->“服务器网络实用工具”-->tcp/ip-->默认端口:2433(其它的也可以)StateServer会话管理将mode属性设为StateServer,也就是将会话数据存储到单独的内存缓冲区中,再由单独一台机器上运行的Windows服务来控制这个缓冲区。状态服务全称是“ASP.NET State Service ”(aspnet_state.exe),它由Web.config文件中的stateConnectionString属性来配置。该属性指定了服务所在的服务器,以及要监视的端口:<sessionState mode="StateServer" 
    stateConnectionString="tcpip=myserver:42424"
    cookieless="false" timeout="20" />在这个例子中,状态服务在一台名为myserver的机器的42424端口(默认端口)运行。要在服务器上改变端口,可编辑HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters注册表项中的Port值。
    显然,使用状态服务的优点在于进程隔离,并可在Web farm中共享。 使用这种模式,会话状态的存储将不依赖于iis进程的失败或者重启,然而,一旦状态服务中止,所有会话数据都会丢失。换言之,状态服务不像SQL Server那样能持久存储数据;它只是将数据存储在内存中。
    无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同。如果服务器位于远程计算机上,请检查 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection 的值,确保服务器接受远程请求。如果服务器位于本地计算机上,并且上面提到的注册表值不存在或者设置为 0(如果改为1,就可接受远程连接),则状态服务器连接字符串必须使用“localhost”或“127.0.0.1”作为服务器名称。本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/ajaxchen_615/archive/2009/06/15/4269750.aspx