我没有构建.NET桌面应用程序的经验,我所有的经验都在于网络。我的一个朋友让我快速估算一个小型桌面应用程序。
应用程序只显示数据库中的项目列表。从数据库中删除/添加行时,需要从用户桌面上的列表中删除/添加行。
这在桌面应用程序中是否很容易完成,或者我是否需要每隔X秒进行一次“重新加载”?
答案 0 :(得分:4)
最简单的设计包括每隔一段时间轮询数据库以查找新记录。调整轮询之间的秒数,以最好地反映实时外观和性能。
任何允许数据库管理系统向桌面应用程序广播更新的设计都会非常复杂,并且(根据您的需要)很可能是过度的。
答案 1 :(得分:0)
稍微阐述 Andrew Hare的设计,我建议您在用户交互发生时包含某种“短路”刷新周期的机制,即
每x秒刷新一次 和 如果用户单击被认为是关键控件且所需更新少于x个记录的控件,则立即执行 除了 这会增加刷新率超过某个油门值
基本上,您希望给人以高性能的印象。感知性能并不意味着快速完成任务,更像是在您希望用户思考,笨拙或打字的时候做慢工作,而不是等待他们等待响应。很少有应用程序在运行时只占用一小部分时间 - 任何感知到的慢性能都源于一个糟糕的设计,其中程序在用户要求时立即执行太多工作,需要他们等待。在后台缓存允许您仅分配最少量的工作以直接响应用户输入,从而提高用户对性能的感知。
尝试直接帮助:
你说你正在使用.Net - 这很方便。 .Net数据绑定非常丰富和强大,很可能使这项工作变得轻而易举。
然而 - 继续阅读......
有可能不会完全按照您的意愿行事。这就是数据绑定成为巨大痛苦的地方。数据绑定需要以某种方式设置.Net需要它,如果它们不需要,那么以你需要的方式重新实现基本功能是相当多的工作。在这种情况下,请不要犹豫,以获得MSDN文档和StackOverflow。提前询问,经常询问。