WPF实时从数据库更新

时间:2011-02-15 20:18:57

标签: wpf listbox notifications live push-notification

我正在构建一个多用户WPF应用程序(需求是桌面应用程序),数据库SQL Server 2008。

有两种类型的用户。

第一个类型的用户将输入一个存储在表格中的记录。

第二类型用户最初将看到一个包含表中记录的列表框。要求是必须实时更新列表框(即,如果第一个用户输入新记录,则必须更新列表框)。

目前我还没有实现数据库功能。 我目前正在使用ObservableCollection并模拟这种情况。

我想知道实现这一目标的最佳方法。 我应该使用计时器并继续查询表吗?有更有效的方法吗? 这是否可能(我应该切换到ASP.NET吗?)?

我很感激您的任何建议和提示。

1 个答案:

答案 0 :(得分:2)

尝试使用SqlDependency,因为当查询结果在服务器上发生更改时,它会在代码中引发事件(OnChange)(作为来自其他用户或进程的INSERT或UPDATE的结果,例如)

在CodeProject上使用简单实时聊天应用程序的示例:

http://www.codeproject.com/KB/database/chatter.aspx