C# 如何从c调用集线器方法#

C# 如何从c调用集线器方法#,c#,signalr,C#,Signalr,我试着做一个小信号器样本来理解它。但我被卡住了,无法获得输出 这是我的示例代码 public class HubClass : Hub { public void HubMethod(string myMessage) { Clients.All.hubClient(myMessage); } } public ActionResult Index() { var hubContext = GlobalHost.ConnectionManager

我试着做一个小信号器样本来理解它。但我被卡住了,无法获得输出

这是我的示例代码

public class HubClass : Hub
{
    public void HubMethod(string myMessage)
    {
        Clients.All.hubClient(myMessage);
    }
}

public ActionResult Index()
{
    var hubContext = GlobalHost.ConnectionManager.GetHubContext<HubClass>();
    hubContext.Clients.All.HubMethod("Hello");
    return View();
}

<div class="msg"></div>
<script src="~/Scripts/jquery.signalR-2.1.2.min.js"></script>
<script src="~/signalr/hubs"></script>
<script>
    var hubCls = $.connection.hubClass;
    $.connection.hub.start();
    hubCls.client.hubMethod = function (message) {
        $('.msg').text(message);
    };
</script>
公共类HubClass:Hub
{
公共方法(字符串myMessage)
{
Clients.All.hubClient(myMessage);
}
}
公共行动结果索引()
{
var hubContext=GlobalHost.ConnectionManager.GetHubContext();
hubContext.Clients.All.HubMethod(“Hello”);
返回视图();
}
var hubCls=$.connection.hubClass;
$.connection.hub.start();
hubCls.client.hubMethod=函数(消息){
$('.msg')。文本(消息);
};

我不知道我哪里做错了

在你的中心,你需要调用你想在客户端调用的方法,即

   Clients.All.HubMethod(myMessage);
SingalR将方法名称转换为驼峰大小写,并在浏览器上调用
hubMethod
函数


您还需要添加一个Owin启动类,以便在站点中启用SignalR。如果我添加这个
Clients.All.HubMethod(myMessage),这将在中描述
到我的hub方法,然后这是@jerry said
hubCls.server.hubMethod(“一些消息”)到我的脚本,我得到输出。但是我想从c#调用它,比如
hubContext.Clients.All.HubMethod(“Hello1”);hubContext.Clients.All.HubMethod(“Hello2”)