プロジェクトにたくさんのページがあります。私が書くすべてのページで:
if (!IsPostBack)
{
if (HttpContext.Current.Session["curUserRole"] == null)
{
DBUsers.SetUserStatusOnline("0", ViewState["curUserLogin"].ToString());
ViewState["curUserLogin"] = "";
Response.Redirect("~/Login.aspx");
}
else
{
ViewState["curUserLogin"] = HttpContext.Current.Session["curUserLogin"].ToString();
DBUsers.SetUserStatusOnline("1", ViewState["curUserLogin"].ToString());
}
}
ユーザーがサイトにログインすると、現在のユーザーの役割がセッションに書き込まれ、現在のユーザーのログインがビューステートに書き込まれます。セッションが終了したら、現在のユーザーログインをビューステートで表示し、データベースにオフラインステータスを設定できると思いました。ただし、session
がnullの場合、ビューステートもnullになります。私に何ができる?