クラスがありSignalRConnection
ます。ここで、 signalR の connectionId を生成します。セッションがnullの場合は新しい接続IDが必要です。それ以外の場合は同じ接続を返します。クラスのコンテキストとconnectioIdを取得するためにIhttpHandlerを実装しようとしましIConnectionIdFactory
た。私のコードは次のようなものです:
> public class SignalRConnection :
IHttpHandler,IConnectionIdFactory,IRequireSessionState
{
string conId;
public bool IsReusable
{
get { return true; }
}
public void ProcessRequest(HttpContext context)
{
if (context.Session["activeuser_id"] != null)
{
conId = context.Session["activeuser_id"].ToString();
}
else
{
conId = Guid.NewGuid().ToString();
}
}
public string CreateConnectionId(SignalR.Hosting.IRequest request)
{
return conId;
}
public string CreateConnectionId(SignalR.Hosting.IRequest request ,string test)
{
return conId;
}
}
ここでの問題は、CreateConnectionId
実行されるだけです。httphandler 用に構成された構成ファイルがあります。conId を ProcessRequest から生成し、SignalR Connection にCreateConnectionId
提供するConnectionId
必要があります。取得できるか、間違った方向に向かっていますか.