これを正しく処理しているかどうかはわかりませんが、問題が発生しているため、そうではないと思います。
ログイン画面を読み込むときに、法人IDを送信する必要があります。
このように見えます:
public ActionResult LogOn(string id)
{
var sb = new StringBuilder();
sb.AppendLine(string.Format("CorpID: {0}", id));
if(ViewBag.CorpID != null)
sb.AppendLine(string.Format("ViewBag.CorpID: {0}", ViewBag.CorpID));
Guid corpIdGuid;
if (!Guid.TryParse(id, out corpIdGuid) && string.IsNullOrEmpty(ViewBag.CorpID))
return null;
// the id passed in will take presidence over the
// viewbag unless it is blank then we use viewbag
// one way or the other viewbag.corpid should not
// be blank
if(!string.IsNullOrEmpty(id))
ViewBag.CorpID = id;
// Session["CorpId"] = id;
//Not a junk guid.. continue.
return View();
}
このセッションでどの会社と協力するかを決めるためにこれが必要です。
私が遭遇している問題は、10分に設定されているCookieタイムアウトが発生したときに、このログインに戻るように指示し、私はもうcorpidを持っていないことです。
試してみましたがviewbag
、リセットされています。
クッキーを試しましたが、有効期限が切れたため、データがありません。
プロファイルマネージャーを試しましたが、ログに記録されているため、何も返されません。
CorpId
ユーザーがタイムアウトしてログイン画面に戻ったときにこれを維持するにはどうすればよいですか?私が持っている画面ごとにこの情報が必要です。
どんな入力でも大歓迎です!