2010-11-26 38 views
0

我有一個使用第三方上傳.ashx頁面的MVC項目。我也有OnActionExecuting(ActionExecutingContext filterContext)以下重寫:覆蓋OnActionExecuting和.ashx文件上傳

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。但是,用戶上傳文件後,它看起來像「上下文」爲空,然後OnActionExecuting()重定向用戶。

爲什麼用戶上傳文件後不再有上下文?我希望他們仍然可以登錄。

回答

0

您是否嘗試過使用控制器操作方法上傳文件而不是通用處理程序?處理程序是非常低的水平,並默認無法訪問餅乾,會話等

+0

我想這是我應該帶頭的方向,因爲我認爲它可以解決很多問題。我只使用一個處理程序,因爲在我之前從事這個項目的人做過。我想盡量讓它工作而沒有太多或重寫,但我認爲這不會發生。 – Buchannon 2010-11-29 15:20:53