【发布时间】:2011-03-19 17:04:47
【问题描述】:
场景:
- 4 个用户启动连接到基于数据库的待办事项列表的同一客户端程序 (Winforms) 的不同实例。
- 第一个用户选择了第三个待办事项列表项。
如何更新/刷新其他 3 个用户屏幕以反映项目 #3 不再可用?
我的想法是一个包含上次更新日期时间戳的表格。然后计时器会每隔几秒钟检查一次,看看是否有任何变化。
更新1:
谢谢大家 - 肯定有很多有效的答案。
我选择了Icemanind 推荐的场景的更简单版本。
【问题讨论】:
-
了解您希望用户何时接收更新/刷新是否重要。您需要立即更新还是延迟更新?用户会处理相同部分的数据吗?例如,如果您有数千个对象并且您正在处理实体 1,那么重要的是您立即知道实体 959 刚刚更改还是仅在您尝试自己修改 959 时才知道?根据这些要求,您可以像我的回答那样使用被动模式,或者像其他人推荐的那样使用更主动的“推送”系统。
-
什么数据库以及如何从该数据库中读取数据??
-
@marc_s -> 数据库现在是 MySQL。
-
@Matthew - 用户将处理相同部分的数据(最新的待办事项)。刷新不需要是即时的 -> 我确实有处理内置以防止人们开始相同的任务。
标签: c# mysql winforms .net-3.5 refresh