7

我想知道是否可以将SignalR放在与 Asp.NetHub项目不同的项目中?如果是的话。如何访问课程?Hub

提前致谢。

4

1 回答 1

4

据我所知,不可能将 SignalR Hub 放在 ASP.NET 项目以外的任何地方,因为 SignalR 是基于 ASP.NET 框架构建的,并且位于 ASP.NET 命名空间中。我没有找到任何相反的说法。

但是,由于 Hub 不需要位于同一项目中以供客户端访问,因此任何 .NET 或 JavaScript 客户端都可以通过适当的配置连接到 Hub。

此链接解释了 JavaScript 客户端的工作原理: http ://www.asp.net/signalr/overview/signalr-20/hubs-api/hubs-api-guide-javascript-client

如果您不使用 .NET 客户端来连接,而是使用外部网站,请调入“跨站点参考”部分: http ://www.asp.net/signalr/overview/signalr-20/hubs- api/hubs-api-guide-javascript-client#crossdomain

此链接说明 .NET 客户端(如 Windows 应用商店应用、Silverlight、WPF 和控制台应用程序)如何工作: http ://www.asp.net/signalr/overview/signalr-20/hubs-api/hubs-api-引导网络客户端#clientsetup

看到您尝试访问不是 ASP.NET 的单独项目中的集线器,我怀疑您使用的是某种形式的 .NET 客户端。前面的链接解释了如何配置这些连接。

因此,例如,如果您构建一个 .NET 客户端,例如 Windows 应用商店应用程序,它仍然可以在发布时访问位于 ASP.NET 项目中的 SignalR Hub,从而允许任何实时功能在客户端中运行就像客户端在同一个 ASP.NET 项目中一样。

于 2013-12-07T05:16:24.007 回答