覆盖OnActionExecuting和.ashx文件上载

时间:2010-11-26 17:28:49

标签: c# asp.net-mvc onactionexecuting

我有一个使用第三方上传.ashx页面的MVC项目。我对OnActionExecuting(ActionExecutingContext filterContext)也有以下覆盖:

public override void OnActionExecuting(ActionExecutingContext filterContext) {
   SessionContext context = (SessionContext)filterContext.HttpContext.Session[SessionConstants.SessionContext];

   if (context == null || context.Ticket == null) {
       filterContext.Result = new RedirectResult(TimeoutRedirectUrl);
       return;
   }

   base.OnActionExecuting(filterContext);
}

这是为了确保用户在访问MVC页面时仍然登录。但是,在用户上传文件后,看起来“context”为null,然后OnActionExecuting()重定向用户。

为什么用户上传文件后不再有上下文?我希望他们仍然登录。

1 个答案:

答案 0 :(得分:0)

您是否尝试使用控制器操作方法上传文件而不是通用处理程序?处理程序的级别非常低,默认情况下无法访问cookie,会话等。