mvc4 Web アプリケーションで SignalR を使用しています。HUBから継承するクラスがあります
[HubName("Chat")]
public class ChatHub : Hub ,IDisconnect
{
private void CallMessage(string message)
{
Clients.MessagesRecieved(message);
}
....
私のクライアントjsファイルには、 $(function () { globalChatHub = $.connection.chat; と書きました。
$.extend(globalChatHub, { MessagesRecieved: function (data) {
alert(data);
}
});
問題は、HomeController.cs のコードからクライアント側スクリプト「MessagesRecieved 関数」を呼び出すことは可能かということです。
そのようなことを言ってみましょう:
public class HomeController : Controller
{
public ActionResult Index()
{
// this is a test
ChatHub h = new ChatHub();
h.CallMessage("hellow");
}