ASP.NET SignalR 系列(七)之服务端触发推送

时间:2024-12-17 19:34:32

前面几章讲的都是从客户端触发信息推送的,但在实际项目中,很多信息可能是由系统服务端推送的,下面2图分别展示两种通道

ASP.NET SignalR 系列(七)之服务端触发推送

客户端触发推送

ASP.NET SignalR 系列(七)之服务端触发推送

            服务端推送

下面我们就重点介绍下服务端如何调用集线器的对象进行推送

可能有的同学就会想,直接调用服务端定义的集线器类,然后调用其成员方法。如:

public void Index()
{
new SignalRDemo.hub.De*b().Hello("大家好啊");
}

这种是行不通的,看报错:

ASP.NET SignalR 系列(七)之服务端触发推送

正确的方式:

 public class HomeController : Controller
{
// GET: Home
public void Index()
{
//获取集线器对象
var de*bContext = GlobalHost.ConnectionManager.GetHubContext<De*b>();
de*bContext.Clients.All.show("从服务端广播");
}
}

效果:

ASP.NET SignalR 系列(七)之服务端触发推送

每次刷新服务端地址,就会推送一条信息到客户端。

通过获取集线器对象,来实现对集线器的各种操作。

本章结束!