2016-08-11 67 views
0

我想在C#上做一些类似的可视化工作,其中有另一个进程将传入数据存储到SQL Server数据库中,我的目标是让Windows窗体将其显示为最接近实时尽可能。达到这个目标的最好方法是什么?从SQL Server Autorefresh仪表板

我想过使用服务代理,但我不确定这是否是最好的解决方案。我没有什么经验,但我之前使用过它。

之后的插入可能会变得非常激烈,目前它每分钟大约3行,但可以达到800左右。

更大的情况是,我需要从中收集数据的表格就像是要显示的信息的历史记录,并且仪表板只应刷新到最新的“状态”,当然我的表格有日期时间列和一个标识符能够将其传递到仪表板。

实施例:

表A:

Name: | datetime | value | 
--- 
tank1 | 2016-08-11 12:10:03 | 80 
tank2 | 2016-08-11 12:10:03 | 79 
tank1 | 2016-08-11 12:08:03 | 90 
tank2 | 2016-08-11 12:08:03 | 89 

此时仪表板应显示80在罐1和79上TANK2,因为它的最新的读取。但下一刻数据插入后,我的仪表板应该尝试刷新,还是太多了?我应该每隔x秒定期更新一次吗?

+0

如果检索所有的数据过于密集,你可能会想到用一个触发器,只更新UI中的那些行(如果此刻显示)的。 – Andrew

+0

@Andrew我刚刚编辑帖子以更好地解释我自己,让事情变得模糊。 –

回答

0

如果我理解你的问题是正确的,那么SignalR应该适合这份工作。它允许您使用C#构建实时Web应用程序。

而且this article可以给你一点帮助,你的任务