2013-01-23 17 views
0

我有一個類SignalRConnection。這裏我想爲signalR生成一個connectionId。 如果會話爲空,我想要一個新的連接ID,否則返回相同的連接。我試圖實現IhttpHandler以獲取該類中的上下文,並且爲該連接獲取上下文。 我的代碼是這樣的:在類中實現IhttpHandler和IConnectionIdFactory(SignalR)

> 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只executed.I擁有和配置了httphandler.I希望從的ProcessRequest產生的conId配置文件中的CreateConnectionId服務ConnectionId連接到SignalR Connection.Can它可以被獲得,或者我正朝着錯誤的方向發展。

回答