SignalR - 客户端需要ASP.net吗?

时间:2014-02-14 15:03:56

标签: c# asp.net signalr

我想弄清楚客户端的ASP.net是否支持SignalR。如果可能的话,我宁愿不依赖于asp.net。到目前为止,我还没有找到任何让我相信它是必需的东西,但我可能会忽视一些明显的东西。

修改 正如评论所指出的,我的问题不正确。我最终试图找出ASP.net是否需要使用SignalR。从Lain的评论下面来看,这听起来不是很优秀!

非常感谢任何信息。

3 个答案:

答案 0 :(得分:7)

没有。在客户端或服务器端,ASP.Net不是 required

ASP.Net是.Net的服务器端平台,因此不能用作客户端的一部分。

有一个原生的C#/ .Net客户端,但这是轻量级的,不需要任何http服务器平台。

服务器端或“Hub”可以是进程自托管的,也可以连接到现有的IIS站点。它不直接使用ASP.net,但可以与ASP.Net网站并行工作。

需要运行的集线器才能连接到您的客户端。

有关更多信息,请参阅SignalR项目站点,其中包含示例: http://signalr.net/


答案 1 :(得分:1)

SignalR是一个用于asp.net的libbrary构建,它使用Web套接字,长轮询,永久帧等功能。如果你想远离asp.net,你可以用任何服务器端语言实现这些功能(直接不通过signalR)。

但是对于没有asp.net特别使用signalR(虽然可能是可行的)是我不想尝试或建议的东西。所有这些都是服务器端的。

对于客户端来说简单的javascript就足够了,所以你不需要在那里使用任何微软技术。

答案 2 :(得分:0)

SignalR不需要ASP.NET。

你需要有一个实现IHub的类,那个类必须是C#或VB,这显然是.Net框架的一种语言。

此外,hub javascript文件由signalr使用c#

输出

任何框架都会自豪地宣布自己的平台不可知,并且信号器的主页标题本身提到 ASP.NET SignalR 因此,你将需要.Net。

你需要拥有这个RouteTable.Routes.MapConnection<MyConnection>(...);,这显然是Global.asax中的c#,显然只能由asp.net网站执行。

最后但并非最不重要的是,SignalR是用C#实现的,你需要ASP.Net,以便signalr在运行时执行c#。

这有很多原因,为什么你一定要有asp.net :)。