C# 通过信号器在控制器操作中直接运行集线器方法

C# 通过信号器在控制器操作中直接运行集线器方法,c#,.net,signalr,signalr-hub,C#,.net,Signalr,Signalr Hub,我有一个信号器,如下所示: public class ConnectionHub : Hub { private static readonly ConcurrentDictionary<string, User> Users = new ConcurrentDictionary<string, User>(); public void GetAddressingResult() { //some implementation

我有一个信号器,如下所示:

public class ConnectionHub : Hub
{
    private static readonly ConcurrentDictionary<string, User> Users = new ConcurrentDictionary<string, User>();

    public void GetAddressingResult()
    {
         //some implementation
    }

}
我现在可以这样做,就像在控制器上调用JavaCScript方法,javascript调用hub方法一样。但它看起来并不好。此外,我还尝试在控制器操作和调用hub方法中创建ConnectionHub的实例,但它给了我一个错误,如“HubbipleLine之外的signalR hub实例”

我使用的是Signalr1.1.4版本


我正在寻找一种最好的方法。

您不能创建hub的实例-它们是在调用hub方法时根据需要创建的。有关如何从中心外部调用中心方法,请参见以下内容:

    //In Home Controller

    [HttpPost]
    public void StartAddressing(string physicalAddress)
    {
        //I want to call GetAddressingResult method just here.
    }