0

従来の ASP.NET アプリケーションを使用しています。NET 2 から net 4 に変換されました。状態サーバー セッションを使用します。

ある時点で、アプリが新しいページを開きます (新しいブラウザー タブ: リンク ターゲット = "_blank")。

しかし、呼び出しページ (タブ) に戻った後、セッションがリセットされていることを発見したため、現在のユーザーは使用されなくなり、アプリはログイン ページにリダイレクトされます。実際には、SessionID は変更されていませんが、IsSessionNew は true に設定されており、セッションには変数が設定されていません。

アプリは Session.Abort または Session.Clear を使用しません。

セッションを InProc に変更し、リンクのターゲットを _top または _self に変更するか、完全に削除しても、同じことが起こります - セッションがリセットされました。

これは web.config のセッション設定です (または StateServer を使用しましたが、結果は同じです)

<sessionState timeout="432000" cookieless="UseCookies" mode="InProc"/> 

何がこれを引き起こす可能性がありますか?

ありがとうございました。

4

1 に答える 1

0

最後に問題を修正しました。ただし、実際の原因はわかりませんでしたが、問題の原因となったモジュールは見つかりました。それは1001のことを行うaspxページでした(これは基本的な機能に加えて、ajax呼び出しに基づく約80の他のことです(!!!)。私はそのページを作成しませんでした!!!しかし、問題を引き起こした部分はそこで、その部分を ASHX ハンドラーとして書き直したところ、コードは正常に機能し、セッションは開いたままになりました。

于 2012-12-29T20:33:01.623 に答える