2016-04-05 9 views
0

どのようにして、ビューによって設定された後に、ベースコントローラ、アクションフィルタなどのような場所に表示されますか?ビュー内に設定されたViewBag値を取得する

+1

以下のようActionFiltersにデータを設定することができます。 –

+0

返事をありがとう。リダイレクトの意味は? – codeRecap

+0

'Viewbag'は、他のアクションやコントローラにリダイレクトしてもアクションフィルタやbasecontrollerでセッションを使用することができない場合でも、コントローラからのデータを送信してその値を失うという意味です。 –

答えて

0

目的は、逆にない表示するコントローラからのデータを送信することです。ビューバックは、データへのアクセスを動的プロパティとして提供します。

ベースコントローラーなどの反対側&アクションフィルターActionExecutingContextまたはActionExecutedContext変数からデータを取得できます。

私達はまたあなたのシナリオでは、 `Sessions`を使用する必要があり、あなたはリダイレクト後に` ViewBag`を読み取ることができません

public override void OnActionExecuting(ActionExecutingContext filterContext) 
    { 
     if (filterContext != null) 
     { 
      //set vlaue in context 
      filterContext.RouteData.DataTokens.Add("VariableName", "Value of variable"); 
      //Log information 
      Log("OnActionExecuting", filterContext.RouteData); 
     } 
    } 
関連する問題