无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同。如果服务器位于远程计算机上,请检查 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection 的值,确保服务器接受远程请求。如果服务器位于本地计算机上,并且上面提到的注册表值不存在或者设置为 0,则状态服务器连接
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Web.HttpException: 无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同。如果服务器位于远程计算机上,请检查 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection 的值,确保服务器接受远程请求。如果服务器位于本地计算机上,并且上面提到的注册表值不存在或者设置为 0,则状态服务器连接字符串必须使用“localhost”或“127.0.0.1”作为服务器名称。
源错误:
执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 |
原因分析:
web.config中配置SessionState的mode为StateServer,但服务器没有开启改个服务。
解决方法:
1.Web.Config里面 把sessionState 的mode改为"InProc" ;
Web.Config里面:
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;user id=sa;password="
cookieless="false"
timeout="20"
/>
你是不是使用“StateServer”,如果是,请参考:
使用 StateServer 模式
确保 ASP.NET 状态服务正在将存储会话状态信息的远程服务器上运行。该服务是随 ASP.NET Premium 版一起安装的,并且该服务默认情况下位于 <Drive>:\Program Files\ASP.NET\Premium\version\aspnet_estate.exe。
在应用程序的 Web.config 文件中,设置 mode=StateServer 并设置 stateConnectionString 属性;例如 stateConnectionString="tcpip=sarath:42424"。
或者
2.在服务中启用"ASP.NET State service"
在"管理工具"中的"服务"启动"ASP.NET State Service",这种方法我自己试了,能解决问题的。


评论列表: