2017-04-08 77 views
0

I'am使用SignalR处理一个小项目,我希望在应用程序启动时将所有客户端重定向到“site1”。如何使用SignalR/c重定向所有客户端#

应用程序上的同一事物停止我希望在应用程序永久化之前将所有客户端重定向到“site2”。

第一种情况很简单,它的工作原因是第一件事就是打电话给集线器。

但我'努力寻找一种方式来捕捉服务器的事件的onStop(iisexpress.exe在我的情况)

MyHub:

public class MyHub : Hub 
    { 

     public bool onStartShouldRedirect() 
     {   
      return true; 
     } 

     public bool onStopShouldRedirect() 
     { 
      return true; 
     } 


    } 

startup.cs:

public class Startup 
    { 
     public void Configuration(IAppBuilder app) 
     { 
      app.MapSignalR(); 
     } 
    } 

的Index.aspx:

 var job = $.connection.myHub; 
     $.connection.hub.start().done(function() { 
      job.server.onStartShouldRedirect().done(function (data) { 
       if (data) { 
        window.location.replace("http://site1.com"); 
       } 
       else 
        alert('ON START : Do not redirect'); 
      }); 

     // ???????????? 
      job.server.onStopShouldRedirect().done(function (data) { 
       if (data) { 
        window.location.replace("http://site2.com"); 
       } 
       else 
        alert('ON STOP : Do not redirect'); 
      }); 

     }); 
    }); 
+0

你总是回归真实......你有没有想过这个逻辑? – mason

回答

0

您是否在寻找disconnected活动?

$.connection.hub.disconnected(function() { 
     job.server.onStopShouldRedirect().done(function (data) { 
      if (data) { 
       window.location.replace("http://site2.com"); 
      } 
      else 
       alert('ON STOP : Do not redirect'); 
     }); 
}