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 saidhubCls.server.hubMethod(“一些消息”)代码>到我的脚本,我得到输出。但是我想从c#调用它,比如hubContext.Clients.All.HubMethod(“Hello1”);hubContext.Clients.All.HubMethod(“Hello2”)代码>