0

サードパーティのアップロード.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ページにアクセスしたときに引き続きログインしていることを確認するためにここにあります。ただし、ユーザーがファイルをアップロードすると、「コンテキスト」がnullのように見え、OnActionExecuting()がユーザーをリダイレクトします。

ユーザーがファイルをアップロードした後、コンテキストがなくなるのはなぜですか?引き続きログインしてほしい。

4

1 に答える 1

0

汎用ハンドラーの代わりにコントローラーアクションメソッドを使用してファイルをアップロードしようとしましたか?ハンドラーは非常に低レベルであり、デフォルトではCookieやセッションなどにアクセスできません。

于 2010-11-26T21:00:43.767 に答える