0

.NET 4.0 Web アプリで StateServer サービスを使用しているときに、すべてのアクティブなセッションにわたってクエリを実行する方法を知っている人はいますか?

私のシナリオでは、ユーザーがパートナー サイトの 1 つに移動したときにセッション データを設定しています。パートナー サイトは定期的に当サイトのサービスを呼び出し、セッションがまだアクティブであるかどうかを確認し、その他のデータを返します。

List all active ASP.NET Sessionsで説明されているソリューションを使用して、最初に InProc セッションを使用していたときに、なんとか機能させることができましたが、StateServer サービスの使用に切り替えたとき、これらの手法は機能せず、セッションを照会できません。 .

何か案は?

どうもありがとう

4

1 に答える 1

0

この記事を読むことをお勧めします-現在アクティブなセッションのカウント

セッション状態は、ASPState というデータベースに格納されます。データベースにはいくつかのストアド プロシージャが含まれており、TempDB データベースに対していくつかのテーブルが作成されます。テーブルは、ASPStateTempApplications および ASPStateTempSessions と呼ばれます。現在アクティブなセッションの数を知ることは、AspStateTempSessions テーブルに対して SELECT を実行するのと同じくらい簡単です。セッションが StateServer モードで動作している場合、これらのトリックはどれも機能しません。

参照: セッション状態の管理
.NET 3.5 SP のインストール後、ASP.NET セッション アクティブ カウンター (ステート サーバーではありません) に無効な数値が表示されます。
ASP.Netの Active Sessions をカウントします。質問で指定したリンクと同じものもあります。

于 2012-10-18T10:41:05.550 に答える