【发布时间】:2013-05-07 16:38:55
【问题描述】:
需要以下建议。
托管 Signalr 的最佳选择是什么,它可以作为 WCF 服务托管吗? 此 SignalR 将由 Web 应用程序 (MVC4) 和 ios 应用程序等客户端使用。
谢谢,
【问题讨论】:
需要以下建议。
托管 Signalr 的最佳选择是什么,它可以作为 WCF 服务托管吗? 此 SignalR 将由 Web 应用程序 (MVC4) 和 ios 应用程序等客户端使用。
谢谢,
【问题讨论】:
据我所知,答案是否定的。您不能将 SignalR 集线器托管为 WCF 服务。作为在 ASP.NET 网站中托管的替代方案,您可以按照here 的说明选择自托管方法。
另一方面,SignalR 具有适用于 ASP.NET 和 iOS/OSX 的客户端 API。最简单的解决方案(也是我的建议)是通过客户端 API 直接使用集线器。
如果您坚持打开 WCF 端点来管理 SignalR 集线器,您可以使用 GlobalHost.ConnectionManager.GetHubContext<YourHub>() 从 WCF 访问 SignalR IHubContext。
这里唯一的要求是您的 WCF 服务必须与 SignalR 集线器托管在同一个 Web 应用程序上。来自不同服务应用程序的外部 WCF 服务无法访问您的 hubcontext。
【讨论】: