C# 来自另一个控制器的呼叫信号器

C# 来自另一个控制器的呼叫信号器,c#,asp.net-mvc-4,signalr,C#,Asp.net Mvc 4,Signalr,我有一个聊天中心正在向客户端发送消息: public class ChatHub : Hub { public void Send(string name, string message) { Clients.All.addNewMessageToPage(name, message); } } 如何调用Send函数从另一个控制器向所有客户端广播消息 我试过这个: [HttpPost] public void Post(Chat chat) {

我有一个聊天中心正在向客户端发送消息:

public class ChatHub : Hub
{
    public void Send(string name, string message)
    {
        Clients.All.addNewMessageToPage(name, message);
    }
}
如何调用Send函数从另一个控制器向所有客户端广播消息

我试过这个:

[HttpPost]
public void Post(Chat chat)
{
    var hubContext = GlobalHost.ConnectionManager.GetHubContext<ChatHub>();
    hubContext.Clients.All.Send(chat.Name, chat.Message);
}
[HttpPost]
公开作废帖子(聊天室)
{
var hubContext=GlobalHost.ConnectionManager.GetHubContext();
hubContext.Clients.All.Send(chat.Name,chat.Message);
}

您需要在
Post
操作方法中调用
addNewMessageToPage

var hubContext = GlobalHost.ConnectionManager.GetHubContext<ChatHub>();
hubContext.Clients.All.addNewMessageToPage(chat.Name, chat.Message);

这应该行得通。您是否设置了断点以查看是否正在调用它?
var chatHub = $.connection.chatHub;

chatHub.client.addNewMessageToPage= function (name, message) {
    //Add name and message to the page here
};
$.connection.hub.start();