在logout.ashx中清除会话

时间:2011-07-19 01:50:45

标签: c# asp.net session authentication

我有一个ashx处理程序,并希望根据请求清除会话。我得到的对象没有设置为Session.Abondon()行上的对象实例。我正在尝试注销用户。

 public void ProcessRequest (HttpContext context) {
    //context.Response.ContentType = "text/plain";
    //context.Response.Write("Hello World");
    FormsAuthentication.SignOut();
    context.Session.Abandon();
    context.Response.Redirect("/login.aspx");        
 } 

我做错了吗?

1 个答案:

答案 0 :(得分:3)

您是否忘记偶然在处理程序中实施IReadOnlySessionStateIRequiresSessionState?如果是这样,您将无法访问会话并获得此错误。这些是标记界面,其唯一目的是让您访问会话。