我正在开发一个使用 firebird 数据库存储数据的 Delphi 程序。它使用自家种植的 o.r.m.系统。当两个用户查看相同的数据时,例如在数据网格中,一个更改了某些内容,另一个屏幕会立即更新。 它的工作方式是一个程序中的对象将它们自身存储在数据库中。数据库有一个触发器,用于在辅助更改日志表中注册此更改。写入此更改日志表会触发一个事件。第二个程序正在监听该事件,并从更改日志表中的条目知道更改了哪个对象。它将重新加载该对象并在该程序内部引发一个事件。此事件将导致显示此对象的所有屏幕以及所有基于此对象的行为的对象进行更新。 我们想切换到 .Net,也许还有 MS SQL。 我的问题是: 1) 我如何使用 MS SQL 执行此操作? 2)是否有支持这个的框架?所以我不必将其移植到 .Net
最佳答案
自 .Net Framework 2.0 和 MSSqlServer 2005 版本开始支持更改通知:使用 SqlDependency类(class)。您在 codeproject 中有一个示例.
另请查看有关在 msdn 中使用通知的一些建议.
关于c# - 如何进行多用户事件驱动的屏幕更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1012234/