2015-12-03 27 views
0

我有一個mssql服務器,可以爲呼叫中心的呼叫保存實時數據。爲了限制對服務器的查詢,我創建了一個WCF服務來查詢該數據庫。帶WCF的實時數據

在C#中使用winforms或wpf我想盡可能近實時地顯示這些數據。

我目前將GridView綁定到ObservableCollection並使用WCF服務填充集合。

這可以工作,但它在更新之間有10多秒的延遲,不管我請求他們的速度有多快。

如何使用wcf從此mssql服務器獲取「實時」數據?

+0

是您的問題是否及時將數據收集到集合中,還是讓客戶端知道並響應更新? –

+0

兩者都誠實.. –

+1

他們是兩個非常獨立的挑戰。爲了讓客戶端接收數據,您可能想要走下SignalR的路徑。對於數據方面,您需要查看觸發器,服務代理或CDC的路徑以創建要輪詢的小數據集。 –

回答

1

這聽起來像你正在使用輪詢(即某種計時器或循環不斷查詢數據庫)來獲取你的數據。這樣你就很難獲得實時更新。

您是否調查過從呼叫中心獲取數據流?

另一種方法可能是看像Service Brokernotify you about new updates

+0

這是思科UCCE,我還沒有找到除SQL以外的方式來獲取數據。是的,我正在使用DispatcherTimer。基於對這些鏈接的簡要介紹,它將需要數據庫修改,這是我不能在沒有繁文rolls節的情況下做的事情。 –