Web アプリケーションでユーザーのログインとログアウトにカスタム コードを使用しています。ログインボタンをクリックすると、以下のコードが実行されます。
if (Membership.ValidateUser(txtUserEmail.Text, txtUserPass.Text))
{
HttpContext.Current.Profile.Initialize(txtUserEmail.Text.Trim(), true);
}
次に、すべてのページの初期化前に profile.Username をチェックして、ユーザーがログインしているかどうかを確認します。しかし、プロファイルが null などに設定されるように、ユーザーをログアウトする方法がわかりません。ログアウトボタンのクリックでこれらすべてを試しています:
protected void lnkBtnLogout_Click(object sender, EventArgs e)
{
Session.Abandon();
Request.Cookies.Clear();
FormsAuthentication.SignOut();
var p = HttpContext.Current.Profile;
Response.Redirect("/Default.aspx");
}
プロファイルがリセットされたかどうかを確認するためだけに変数 p を使用していますが、ログインしているユーザーのすべての値が残っています。それで、プロファイルをリセットしてユーザーをログアウトするにはどうすればよいですか???