HttpHandler(ashx)中获取Session状态

本文介绍在HttpHandler(ashx文件)中如何正确访问Session状态。为读取Session值,需实现IReadOnlySessionState接口;若需读写,则实现IRequiresSessionState即可。文章提供C#代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这里为自己或后来困惑的朋友做一个提醒的记录,当想要在HttpHandler(ashx文件)中访问Session的状态值时,需要显式的实现一个接口 IReadOnlySessionState,示例如下:

 

<%  @ webhandler language = " C# "   class = " DownloadHandler "   %>  
using  System; 
using  System.Web; 
using  System.Web.SessionState ; 

public   class  DownloadHandler : IHttpHandler,  IReadOnlySessionState 
{
  
public   bool  IsReusable {  get  {  return   true ; } } 
  
public   void  ProcessRequest(HttpContext ctx) 
  { 
   ctx.Response.Write(ctx.Session[
" fred " ]); 
  } 

 

如果要读写Session的值,那么只要实现 IRequiresSessionState 接口就可以了,这两个接口没有待实现的方法,可直接使用。

 

 

TrackBack:http://www.cnblogs.com/shouzheng/archive/2008/03/09/1097116.html

转载于:https://www.cnblogs.com/hdjjun/archive/2009/03/20/1417622.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值