私は新しい開発者であり、ログアウト機能が機能しない理由を理解するタスクが割り当てられています。私は見つけることができるすべての可能な方法を試しました。以下は、私が使用したメソッドを含む、私が保持しているログです。
CommonHeader.ascxフォームにログアウトボタンを追加しました
logout.aspx.vbフォームで多数のメソッドを試し、セッションを終了またはクリアしましたが、いずれも機能しません。
a。logout.aspx.vb形式で定義されたClearSessionサブルーチン:
Session("Variable") = ""
FormsAuthentication.SignOut()
Session.RemoveAll()
Session.Abandon()
Session.Clear()
b。また、これをPage_Loadサブルーチンの先頭に追加しました。
HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache)
HttpContext.Current.Response.Cache.SetNoServerCaching()
HttpContext.Current.Response.Cache.SetNoStore()
c。また、ClearSessionサブルーチンをSession.Contents.Remove("Variable")
からに変更しましたSession("Variable") = ""
これらの方法はどれも機能しません。私たちはSiteminderを使用していますが、これが問題の原因であるかどうか疑問に思っていました。Siteminderを使用するセッションをクリアしても何も見つかりません。また、このアプリケーションはVisualStudio2003でコーディングされていることにも注意してください。
これは、ascxファイルで使用しているボタンのコードです。
athp:TopNavText Title="ログアウト"NavigateUrl= "logout.aspx" Target = "_ top" /
次に、「logout.aspx」フォームで、上記の方法の1つ、またはそれぞれの組み合わせを使用してみました。これは私が触れる前のコードです:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
ClearSession()
Response.Redirect("login.aspx")
End Sub
Public Sub ClearSession()
Session("Variable") = ""
End Sub