使用SignalR始终将数据从服务器推送到客户端

Fah*_*jua 1 asp.net signalr signalr-hub

我正在开发一个Web应用程序,我有一些图表,我希望始终从数据库中获取图表的数据,以便用户始终拥有最新的数据图片.我使用signalR并在Report页面的页面加载中调用hub类中的服务器方法,该方法从数据库获取图表数据并将其传递到客户端,然后客户端的处理程序处理数据并绘制图表.我想要的是不断获取数据.我的选择是什么?

在一分钟的修复间隔后继续调用hub方法的最佳方法是什么?

And*_*ers 5

我不会在客户端或服务器上进行轮询.而是使用服务总线并在发生时在该总线上发布更改.

然后,您可以使用SignalR将这些事件转发给客户端.我已经为一个名为SignalR.EventAggregatorProxy的库创建了一个库

https://github.com/AndersMalmgren/SignalR.EventAggregatorProxy/wiki

我在这里写了一篇关于它的博客文章 http://andersmalmgren.com/2014/05/27/client-server-event-aggregation-with-signalr/

您还可以查看演示 https://github.com/AndersMalmgren/SignalR.EventAggregatorProxy/tree/master/SignalR.EventAggregatorProxy.Demo.MVC4

或者看看这里的现场演示 http://malmgrens.org/signalr/

  • 数据在数据库中.如果这是他的数据来源,他将需要对数据库进行"轮询",除非他使用的数据库提供某种推送机制,可用于发布该总线上的更改.但是,数据应该推送到客户端,不应该由客户端轮询 (3认同)