首页 > 代码库 > ASP.NET Web Service中使用Session 及 Session丢失解决方法 续
ASP.NET Web Service中使用Session 及 Session丢失解决方法 续
原文:ASP.NET Web Service中使用Session 及 Session丢失解决方法 续
1、关于Session丢失问题的说明汇总,参考这里
2、在Web Servcie中使用Session,需要对Web Method做如下处理
[WebMethod(EnableSession = true)]
public void usingSession()
{
Session["Name"] = "Name";
}
public void usingSession()
{
Session["Name"] = "Name";
}
如果不加EnableSession = true,在Web Service中是不能使用Session的。
3、这里说一下使用mode="StateServer"解决Session丢失问题的配置:
1)首先在Windows服务中启用 asp.net State Service,这个服务默认被设置为手动启动
2)在web.config中做如下配置
<system.web>
<!--其他配置信息-->
<sessionState timeout="200000" cookieless="false" mode="StateServer"></sessionState>
</system.web>
<!--其他配置信息-->
<sessionState timeout="200000" cookieless="false" mode="StateServer"></sessionState>
</system.web>
timeout自己根据需要设置,关键是要配置这两个属性cookieless="false" mode="StateServer",cookieless默认为false,所以这个属性可以去掉。
如果cookieless设置为true,URL中会包含会话ID,如:http://localhost:4555/WebSite/(S(dmb2qpn4m2x3cj55pzwcvh55))/index.html。此时Web Service中将无法正常使用Session。
ASP.NET Web Service中使用Session 及 Session丢失解决方法 续
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。