2014-12-13 58 views
1

我正在开发一个显示当前人员配置数据的ASP.NET MVC 5应用程序,并在人员配置更改发生时使用SignalR通知连接的客户端。这对于实时事件非常有用(“我现在需要离开工作岗位”),但现在我需要处理预定的事件,将来会发生员工变更。使用SignalR在计划事件发生时通知客户

也就是说,一个事件可能会安排在3小时27分钟(“我需要在下午4点离开工作”)或甚至3个月后发生。事件发生时,应通知连接的客户端,以便向最终用户显示正确的人员配置数据。当然,未来可能会发生变化,并且解决方案需要考虑被取消或修改的计划事件。

我很想找到一个干净的方式来做到这一点,不从客户涉及频繁的查询,了解即将发生的事件,对睡在服务器端线程等

+1

怎么样建立一个服务器端的计划作业。服务器然后可以调用signalR集线器将通知推送给客户端。 Quartz.NET适合这些东西 – cordialgerm 2014-12-13 02:13:54

+0

^推荐以上。看起来你正在试图将调度工作放到你的Web服务器上,而这不应该在那里。使用单独的任务/计划程序来完成这项工作,也许可以在引发事件的集线器方法上使用'[Authorize]'来确保只有调度程序可以调用它们。客户只能接收事件。 – Madushan 2014-12-15 09:53:45

回答