私のログアウトボタンのコードは次のようになります。
protected void ButtonLogout_Click(object sender, EventArgs e)
{
Session["login"] = null;
}
私のページの onLoad イベントは次のようになります。
protected void Page_Load(object sender, EventArgs e)
{
if ((string)Session["login"] != null)
{
ButtonLogout.Visible = true;
// (...)
}
else
{
ButtonLogout.Visible = false;
// (...)
}
}
私はこれが正しく機能することに問題があります。何が起こっているのかわからなかったので、ButtonClick イベントと PageLoad イベントの両方にブレーク ポイントを設定しました。私が見つけたのは、PageLoad イベントが最初に実行されるということです (sic!)。それが、ButtonLogout がクリック後に非表示にならなかった理由です。ButtonClick イベントでページを更新するだけで済みますが、ボタンを 1 回クリックした後にページを 2 回読み込んでも問題ないかどうかはわかりません。これを解決する他の方法はありませんか?ありがとう。