2つのアクション関数を持つ1つのコントローラークラスがあります。1つのアクションは、1つのビューを持つログインページであり、もう1つのアクションは、複数のビューを持つバックエンドページです。
public ActionResult Login(...)
{
if (logged in or login success)
{
return RedirectToAction("Backend","Controller");
}
...
return View();
}
public ActionResult Backend(...)
{
if(session expired or not logged in)
{
return RedirectToAction("Login","Controller");
}
...
return View("someView");
}
問題は、バックエンドアクションがユーザーをログインアクションに送信する必要があり、ログインページに「セッションの有効期限が切れました」などのメッセージをユーザーに表示したい場合です。
例として、ViewBagは現在のセッションにのみ存在します。しかし、セッション間で情報を保存するための同様の簡単な方法はありますか?したがって、バックエンドにメッセージを設定してから、ログインにリダイレクトし、ログインにそのメッセージを読み取らせてビューに表示させることができますか?PersistentViewBagのようなものです。
実行可能なオプションであるように、私は実際にはget、post、またはcookieを使用したくありませんが、代わりにバックエンドアクションで独自のビューとしてログインするだけです。