2012-01-30 135 views
1

非常快速的問題 - 如果我將WPF應用程序部署到少數用戶,我可以使用SQL依賴關係嗎?換句話說,我正在考慮在WPF程序中使用SQL Dependency(儘管我無法弄清楚,但這是另一個topic ...),但我讀過一些小技巧,如果有多個用戶訂閱它或其他東西。這是真的?如果是這樣,最好的辦法是什麼?我只是試圖找出WPF程序識別何時將新行添加到數據庫(然後將該行中的信息拉出)的最佳方式。WPF應用程序+ SQL依賴關係

謝謝!

編輯:只是使用後臺工作器和每隔幾秒鐘查詢數據庫的無盡循環會更容易/更有效嗎?如果行數增加,那麼做點什麼?

P.S.使用C#和SQL Server 2008 R2 Express

回答

3

是的,您可以在WPF應用程序中使用SqlDependencySqlCacheDependency

您必須確保您在正確的時刻撥打SqlDependency.Start,當您完成時或程序退出時撥打SqlDependency.Stop。然後,您可以將依賴關係指向SQLCommand對象,並確保您訂閱了OnChange事件。

Here is a nice example同時具有WPF和ASP.NET實現。

+0

謝謝!同一個程序的多個實例(即不同的用戶)是否仍然可以執行此操作? – keynesiancross 2012-01-30 20:34:21

+0

@keynesiancross是的,這是可能的。 SqlDependencies旨在用於多用戶環境。 SqlServer將確保每個執行的查詢都被檢查,以便它可以發送通知給客戶端。 – 2012-01-30 20:36:23

+0

好的,謝謝!現在,我只需要讓bugger工作.... – keynesiancross 2012-01-30 20:37:10