本文介绍了SignalR-在运行时添加集线器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个可以工作的SignalR应用程序,我的global.asax.cs执行所有常见的MapHubs()等操作,并且我使用的是自定义IAssemblyLocator,它还加载内存中的程序集和引用的程序集。我有的两个集线器是在运行时在内存程序集中创建的,这很好用-集线器可以将消息推送到客户端等。

在应用程序启动后的某个时刻,我希望在运行时添加另一个中心,该中心将位于它自己的内存中程序集中,并使其显示在SignalR/Hubs/file中。

如何执行此操作?

再次调用MapHubs会导致错误,因为我已经定义了路由。删除路由似乎不起作用(到目前为止,我只使用RouteTable.Routes.Remove(RouteTable.Routes[0])成功做到了这一点,显然并不理想)。

有什么好方法可以做到这一点吗?

推荐答案

使用替代语法而不是使用静电信号R/HUBS文件,因为它永远不会更新:

http://www.asp.net/signalr/overview/hubs-api/hubs-api-guide-javascript-client#genproxy

这篇关于SignalR-在运行时添加集线器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

05-30 03:01