IConnectionIdGenerator
Webフォームアプリケーションで簡単にするために、ログインした認証済みユーザーのEmailAddress.ToLower()によってクライアント接続IDに名前を付ける独自の実装を作成しました(それが利用できない場合は、デフォルトでGUIDに戻ります)。すべての背後にある私のページコードからクライアントを呼び出すことは正常に機能します。
hubContext.Clients[LoggedInUser.EmailAddress.ToLower()].updateProgress(i)
ただし、同じログインユーザーで別のブラウザまたはタブを開くと、両方のウィンドウのforeverframe接続で301の結果が表示され続け、200の結果が交互に繰り返されるようです。
同じ接続IDを割り当てると、接続先に関係なく、メッセージがシステムの正しいユーザーに正しく送信されるようにする簡単な方法が得られると思いました。
それらは常に一意である必要があり、ログインしたユーザーアカウントへの接続を管理するために別のレイヤーを構築する必要がありますか、それともここでトリックを見逃していますか?