我有一个简单的WinForms
GUI,其中包含多个TextBox
es,CheckBox
es和RadioButton
s,供用户输入/修改数据。从SQL Server数据库加载/保存所有内容。如何在用户关闭GUI时警告用户?我是否查询SQL以获取数据并将其与GUI中的内容进行比较,如果存在任何差异,我只是警告用户?或者,还有更好的方法?此外,在这段时间内,用户可能会打开一个窗口,有人进来并从另一台计算机上更改了某些内容,而且SQL数据与加载到WinForms中的内容有所不同。
答案 0 :(得分:3)
关于本地变化: 保留一个本地标志,在一般消息的任何更改中设置为true。 如果要跟踪特定的更改,可以使用字典。
为防止其他用户覆盖数据,您可以使用锁定,并阻止其他人打开该记录,或仅允许他们以只读方式打开。
您可以在该记录上使用时间戳,并检查自上次读取该记录后是否已更改,然后警告用户该数据不再相同。