2017-08-25 17 views
0

私の属性は、任意のリクエストが自分のasp mvcアプリケーションに受信されたときに発生します。カスタムフィルタのASP MVCチェックセッション

public class AllActionsAttribute : ActionFilterAttribute 
{ 
    public override void OnActionExecuting(ActionExecutingContext filterContext) 
    { 
     var session = Session["mySession"]; //it' doesn't work 
    } 
} 

OnActionExecuting()機能でSessionをチェックする方法はありますか?

+0

「機能しません」とはどういう意味ですか?セッションのヌルですか?あなたのキーの値は空ですか?これはあなたがあなたのアプリを初めて統計したときにだけ起こるのですか? – Fran

+0

Sessionという名前は現在のコンテキストに存在しません。どのリクエストでも発生しません。 – user3748973

答えて

1

セッションfilterContext

セッションを介してアクセスすることができるHttpContext.Sessionへのアクセスをラップコントローラ特性です。アクションフィルタには、セッションのプロパティがありません

、あなたはfilterContextを通じてセッションを見てする必要があります。

filterContext.HttpContext.Session