1

私はどこでもこれに対する答えを見つけようとしてきたので、誰かが助けてくれることを願っています.

ちょっとした背景: 私は SignalR で足を濡らし、Chat Room Exampleを拡張しようとしています。私の考えは、基本的に、部屋に入ったユーザーのリストを持つことです。ユーザー名のリストを「ユーザー」キャッシュキーに保存し、ユーザーがログイン/ログアウトするときにこのリストを維持および配布することで、これを実行しようとしています。クライアントから要求されたときに、ハブのコード内からこのリストにアクセスしたいと考えています。

私が使用するApplicationと、望ましい結果が得られますがHttpContext.Current.Application、クラシック ASP との互換性のためだけに存在するため、最良の方法ではないことを理解しています。に関する多くの推奨事項を目にしHttpContext.Current.ApplicationInstanceますが、これにアクセスするたびに が表示NullPointerExceptionされApplicationInstanceます。私が達成しようとしているキャッシュキー (または同等のもの) を操作する最良の方法は何ですか?

4

2 に答える 2

1

データベース、キャッシュ、または静的変数を使用して状態を保存します。SignalR 内で HttpContext.Current を使用しないでください。

于 2013-10-04T04:02:22.470 に答える
1

これに Application を使用することはお勧めしません。ログイン/ログアウトなどのイベントに基づいて単純にキャッシュして最新の状態に保ちたい場合は、ハブ クラスまたはオブジェクト キャッシュで静的メンバーを使用します (例: http://msdn.microsoft.com/en-us/library/ )。 dd997357.aspx )

于 2013-10-04T04:04:13.473 に答える