SIgnalR - 如何使用存储在文件夹中的Hub?

SIgnalR - 如何使用存储在文件夹中的Hub?

问题描述:

我正在用C#开发ASP Web Form项目。SIgnalR - 如何使用存储在文件夹中的Hub?

我有2个SignalR集线器:

  1. 'HUB1' 这是在项目的根(\ Hub1.cs)

  2. 'HUB2' 这是一个文件夹(\游戏\ Hub2.cs)

我的Program.cs

public class Startup 
{ 
    public void Configuration(IAppBuilder app) 
    { 
     app.MapSignalR();    
    } 
} 

当我打开一个页面,只有HUB1加载,因为我用

<script src="/Scripts/jquery-1.6.4.min.js"></script> 
<script src="/Scripts/jquery.signalR-2.2.0.js"></script> 
<script src="/signalr/hubs"></script> 

在js脚本我用

$.connection.Hub2.client.Foo=... ;//some funtion 
    and 
$.connection.hub.start();//starts the hub 

我不能看到HUB2另外,如果我写<script src="/signalr/hubs"></script>

我如何使用它?我需要将Hub放在不同的文件夹中。

谢谢

所有集线器都在/ signalr /集线器中,而不参考文件夹。但所有这些都必须以小写字母开头。

你可以试试吗?

$.connection.hub2.client.Foo=... ;//some funtion 
+0

它不起作用。它给我'$ .connection.hub2是未定义的' –

+1

你可以在浏览器控制台“$ .connection”和输出对象查找集线器?你看到什么中心? – Almeonamy

+0

我解决了:我在项目中有两个Hub2(一个隐藏),signalR无法加载它。不管怎样,谢谢! –