如何从通用处理程序访问会话

时间:2012-10-18 11:18:14

标签: c# asp.net

在ashx中: 我将数据放在实体列表中协助会议。

context.Session["objList"] = myEntityCollection;

我希望通过回复获得本次会议;在代码背后。 如何实现?

context.Response.ContentType = ???
.....
context.Response.Write(context.Session["objList"]);

2 个答案:

答案 0 :(得分:2)

嗨,如果我理解正确的话。要访问ashx文件中的会话数据,您需要实现接口IRequiresSessionState

public class ExampleHttpHandler : IHttpHandler, IRequiresSessionState
{
    public bool IsReusable
    {
        get
        {
            return false;
        }
    } 

    public void ProcessRequest(HttpContext context)
    {    
        context.Session["test"] = "test";
        context.Response.Write(context.Session["test"]);
    }
}

答案 1 :(得分:0)

将对象序列化为JSON,返回带有响应的序列化字符串并使用application/json ContentType