SignalR及时通知功能

功能需求,现时已经编写了一个hub能够,将后台的消息发送至前台中,并给出提示,但如后台已经发生了变化,由内部调用消息时,应该怎样处理?

1.编写Hub类

using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.AspNet.SignalR;
 
namespace ArasServiceObject.Hubs
{   
    //连接的Hub一定要与Hub Class中的名字一样
    public class ChatHub : Hub
    {        
        //public void Send(string name,string pi_message)
        //{
        //    Clients.All.addNewMessageToPage(name, DateTime.Now.ToString() + "--" + pi_message);            
        //}
 
        static IHubContext signalRHub;
 
        public static void Send(string name, string pi_message)
        {
            if (signalRHub == null)
            {
                signalRHub = GlobalHost.ConnectionManager.GetHubContext<ChatHub>();
            }
            if (signalRHub != null)
            {
                signalRHub.Clients.All.addNewMessageToPage(name, DateTime.Now.ToString() + "--" + pi_message);
            }
        }
    }
}
2. 事件源调用
ArasServiceObject.Hubs.ChatHub.Send("System","Run GetByID");
posted @ 2017-01-09 11:15  WesChan  阅读(1025)  评论(0编辑  收藏  举报