ローカルiisで2つの非常に単純なアプリケーション(ASP .NET)とホストを作成しました。 両方のアプリが同じブラウザで2つのタブで開かれています。最初のアプリケーション(AppA)では、セッション(Session ["name"] = "john")にデータを保存し、2番目のアプリケーション(AppB)ではこの値を読みました。 (FireCookieで)クッキーを探索すると、両方のアプリケーションのSessionIDが同じであることがわかりました。また、両方のアプリでSessionIDが印刷され、同じです。セッションから(正しいキーを使用して)AppBでこの値を取得しようとすると、セッションは空ですが、セッションIDは同じです。 AppAセッションのデータはまだ生きています。セッションIDは同じですがセッションデータは同じではありません
両方のアプリが(同じセッションIDを使用して)ウェブサーバーにデータを返すよう要求すると、セッションデータが異なる理由を教えてください。
段落のセッションIDのこの記事http://www.codeproject.com/Articles/32545/Exploring-Session-in-ASP-Net を見てください。クライアントがデータを要求すると、ASP.NETはセッションIDを探し、対応するデータを取得します。 – SilverDeveloper
@ SilverDeveloper:重要なことは、2つのアプリケーションが完全に異なるセッションストアを持つことです。特定のセッションプロバイダでは、これを行うことができます(例えば、SQLベースのものであれ、何かのものであれば)。一般に、アプリケーションとセッションIDでセッションデータを効果的にキーイングしています。 – Chris
おそらくセッションをデータベースに格納するのがこの場合のアイデアですか? – Cerveser