ユーザーが Web サイトにログインすると、ユーザー関連の値 ( など) を持つ 5 つのセッション変数を作成していuserid
ますroleid
。セッション変数に格納されている値の 1 つに基づいて、データベース内のレコードを更新する必要があります。これを行うためにSession_End()
、Global.asax のイベントで次のコードを書いています。
if (Session["UserHistoryID"] != null)
SessionUtility.UpdateDatabase(Convert.ToInt32(Session["UserHistoryID"]));
ここでの問題は、セッションがタイムアウトして変数がSession_End
発生し、上記の条件が失敗してデータベース内のレコードが更新されない場合です。これをローカル システムでテストすると正常に動作しますが、実稼働サーバーでテストすると一部のレコードが更新されませんSession
Session["UserHistoryID"]
NULL
なぜこうなった?
誰かが正確にどのように機能するかを説明してくださいSession_End
。
どこでも検索しましたが、これに対する解決策が見つかりません。