在ashx页面获取Session值的方法

电子常识

2585人已加入

描述

  在一般事务处理页面,可以轻松的得到 Request,Response对象,从而进行相应的操作,如下:

  HttpRequest Request = context.Request;

  HttpResponse Response = context.Response;

  但是要得到 Session的值就没有那么简单了。比如你要在ashx得到保存在Session中的登录帐号Session[“userAccount”]

  如果你只是context.Session[“userAccount”]的话是会报 “未将对象引用设置到对象的实例”的异常

  所以,如果要想取Session中的值 ,需要如下所示

  1、引入 命名空间:

  using System.Web.SessionState;

  2、实现IRequiresSessionState接口,具体如下

  ///

  /// $codebehindclassname$ 的摘要说明

  ///

  [WebService(Namespace = “http://tempuri.org/”)]

  [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]

  public class AddUserInfo : IHttpHandler,IRequiresSessionState //就是这样显示的实现一下,不用实现什么方法

  {

  public void ProcessRequest(HttpContext context)

  {

  //。..

  //这样你就可以如下 操作了

  if(context.Session[“userAccount”] != null)

  {

  string account = context.Session[“userAccount”].ToString();

  }

  //。..继续下面的代码

  }

  }

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分