Sql 关于数据库更改的通知
我正在尝试一个场景,在这个场景中,我想用任何用户提交的更改来更新运行在不同PC上的桌面UI。例如:Sql 关于数据库更改的通知,sql,sql-server,wcf,sql-server-2005,sql-server-2008,Sql,Sql Server,Wcf,Sql Server 2005,Sql Server 2008,我正在尝试一个场景,在这个场景中,我想用任何用户提交的更改来更新运行在不同PC上的桌面UI。例如: Application1安装在PC1、PC2和PC3上 假设所有PC都运行此应用程序 假设PC1上的用户1更改数据并提交到数据库 PC2和PC3上的UI应使用更改进行更新,而无需轮询或从数据库中提取数据 有谁能建议一种方法来通知我的中间层服务有关数据库更改的情况,然后我可以将其转发给所有注册的客户端。当表发生更改(插入/更新/删除)时,SQL Notification Services或Servi
有谁能建议一种方法来通知我的中间层服务有关数据库更改的情况,然后我可以将其转发给所有注册的客户端。当表发生更改(插入/更新/删除)时,SQL Notification Services或Service Broker是否会发出通知?任何建议都会有帮助。正是这样做的。当服务器上的数据发生更改时,您将收到通知,您必须再次查询数据以刷新UI。一个简单的实现是使用CachedQueryOptions对象并将处理程序添加到该对象。在不与数据库通信的情况下,如何使用数据库更改更新客户端?通知服务已停止。也许看看查询通知?这仍然需要客户端以某种方式检索新数据。感谢回复。我最终将从数据库中提取数据,但只有当我从服务器收到要提取的通知时。看起来查询通知可能是Remus建议的答案。我计划通过一个服务层来实现这一点,该服务层会将此通知传播到所有注册的客户端。虽然响应有点晚,但最终我实现了查询通知,如果我注册一个表,它就可以正常工作。当我注册两个表时,我只从我注册通知的最后一个表获得通知。有什么想法吗?谢谢雷姆斯的建议,我觉得这是个解决办法。我将实施它,看看它是否有效。但问题是,当您说查询通知时,它是否也需要任何ServiceBroker的东西?SQL Server 2005和以后的SQL Server 2008 R2是否支持查询通知?查询通知依赖于Service Broker来传递其通知。这一切都在我文章的第一个链接中描述过。