如何在ashx页面获取Session值

在一般事务处理页面,可以轻松的得到 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接口,具体如下  

    /// <summary>
    /// $codebehindclassname$ 的摘要说明
    /// </summary>
    [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();

      }

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

    }

  }

 

时间: 2024-08-02 04:42:50

如何在ashx页面获取Session值的相关文章

jsp页面获取session值,第一次取值为空,必须要重新刷新页面,才能取到,求高手指点,急!!!

问题描述 action里面打印有值,但是在jsp页面取值却没有,debug也显示是空的,非要刷新一次才能取到​ 解决方案 解决方案二:.....没看懂,估计不是你贴出来的原因解决方案三:增加一行刷新缓冲区的代码试试解决方案四:jsp页面在加载的时候会编译成servlet,而servlet则会展示给我们想要的页面,这个编译过程会把标签,el语句等等也编译,这个时候只是页面的加载,这个时候还没有访问你的action,所以在session中的action_name是空,等页面加载完成后会访问ajax,

ashx页面中获取session值例子介绍

1-在 aspx和aspx.cs中,都是以Session["xxx"]="aaa"和aaa=Session["xxx"].ToString()进行读写. 而在ashx中,Session都要使用context.Session,读写方法是这样的: context.Session["xxx"]="aaa"和aaa=context.Session["xxx"].ToString() 2-在ash

android service-Android 如何在service中获取按键值

问题描述 Android 如何在service中获取按键值 Android 如何在service中获取按键值, 我现在要做这么一个功能,用户通过按实体键盘的键 比如 a键,后台service就能捕获这个键,并做相应的响应.我网上查了一些资料,有的说直接读取设备文件/dev/input/eventX,但是直接读取,提示没有权限,如何操作? 解决方案 .....貌似java中有方法可以直接读取键盘操作,,读取之后抛出去就好了 比如下边的 int score; Scanner sc = new Sca

spring mvc中 用velocity 模板做视图技术 无法获取session值

问题描述 在controller中是@RequestMapping("/testview")publicStringvelocityTest(HttpSessionsession){session.setAttribute("pp","123");return"testvelocity";然后再vm中$session.getAttribute("pp")却无法获取session值求大虾们帮帮忙

js-如何在运行页面获取到textarea的内容,然后传递到指定的div中

问题描述 如何在运行页面获取到textarea的内容,然后传递到指定的div中 运行页面的textarea内容是我手动复制上去的,如何点击按钮后,传递到指定的div中... 解决方案 按钮onclick执行下面的代码 document.getElementById('div的id').innerHTML=document.getElementById('textarea的id').value.replace(/n/g,'<br>')

js-如何在子页面获取父页面的按钮的

问题描述 如何在子页面获取父页面的按钮的 父页面有很多个id不相同的按钮,都可以popup弹出同一个子页面,我怎么在子页面中获取到是父页面中单击哪个按钮跳到子页面的? 解决方案 用GetParent可以得到父窗口的句柄

ashx中使用session的方法(获取session值)_实用技巧

WEB开发,在一般处理程序中,很容易得到 Request和Response对象,如: 复制代码 代码如下: HttpRequest _request = context.Request; HttpResponse _response = context.Response; 但是要得到 Session的值就没有那么简单了. 比如如果要在ashx得到保存在Session中的登录用户信息 Session["LoginUser"] 如果仅仅使用 context.Session["Lo

同一页面获取session对象不同的问题(急)

问题描述 index.jsp中有A.B两个iframe,A中放show.jsp,B中放result.jsp,操作show.jsp中的某个选项,在result.jsp中会有响应.result.jsp中有代码用到了jsp内置对象session.当初始化index.jsp时,通过调试发现result.jsp中session对象的session_id为390,操作show.jsp,发现result.jsp中session对象的session_id为410.是因为两次连接导致获取到的session对象不同

asp.net中的session赋值与获取session值代码

asp教程.net中的session的定义和取消有时是分散的,工作组中的每个人定义session的时候不一样,并且名称有随意性,所以做了一个session的统一管理,便于session的规范化. //interface for session     public interface isession {         string tostring();     } 2. session 类  // managerinfo 是model中的一个类,直接继承 // 将对象放入session中时