0


0

まず、セッションにキーと値のペアを追加したLoginページを作成し、そのページでセッションがそのペアを保持していることを確認しました。 次に、セッション内でそのペアを探す別のページに移動しようとしましたが、そこには表示されていません。 タイムアウトにならないように、セッションのタイムアウトを15000に設定しました。 私は現在、セッションを見るために静的クラスHttpContext.Current.Sessionを使用しています。 各Pageはセッションを見るためにこの静的クラスを呼び出しますが、ログインページ上のペアを除いて、セッションキーはcount = 0になります。

パブリック静的クラスUserAuthenticationManager {パブリック静的ブール値IsAuthenticated(){UserAuthenticationTicket ticket =

string redirectUrl = String.Format(DefinesPL.LoginPage);

if(ticket!= null){if(ticket.IsExpired()){HttpContext.Current.Session.Abandon(); HttpContext.Current.Response.Redirect(redirectUrl、true); else {HttpContext.Current.Session.Abandon();} HttpContext.Current.Response.Redirect(redirectUrl、true); }

trueを返します。 }

2 Answer


1


最も一般的な原因はクッキーが無効になっていることです。 クッキーを必要とするか、または クッキーレスセッションモデルに切り替える必要があります。


0


Global.asaxがプロジェクトに追加されていることを確認してください。 私は以前にこれに出くわしたと思います。そこでは、すべてのHTTPリクエストに対して新しいセッションが作成されました。