2013-05-30 46 views
2

爲了實驗目的,我製作了一個寫入數據庫的ASP.net webform。我也做了一個窗體(C#)寫入同一個數據庫。 webform在gridview中顯示文本,winform在datagridview中顯示文本。當數據庫被外部更新時刷新webform

我的問題是:當數據庫被另一個更新時,是否可以刷新窗體和窗體?如果是這樣,有誰能指出我的方向正確嗎?

+0

考慮觀察者模式。 –

+1

查詢通知http://msdn.microsoft.com/en-us/library/t9x04ed2.aspx –

+2

您可以使用SignalR! – 2013-05-30 19:01:02

回答

1

喬治在他的評論中提出了一個很好的方法。

對於ASP.Net,您可以使用SignalR來更新網頁。

ASP.NET SignalR是ASP.NET開發人員的新庫,它簡化了嚮應用程序添加實時Web功能的過程。實時網絡功能是在服務器端代碼變爲可用時立即將內容推送到連接的客戶端的能力。

傳統方法會涉及桌面應用程序的「輪詢」,即每隔幾秒發出一次請求以查看是否有新信息。這種方法可能是資源密集型的。當然,您也可以從網頁進行輪詢。

0

最簡單的方法是使用兩個計時器控件,一個在WinForm中,另一個在WebForm上。

並在所需的時間間隔重新綁定數據集。

重新綁定數據

grdWaiver.DataSource = dv 'Set the dataview to the DataGrid 
grdWaiver.DataBind() 

(上方。在我所使用的數據視圖用作數據源)

+1

sigalR的問題在於它不適用於比IIS7更早的任何IIS,並且至少也需要.NET Framework 4.0。 –

相關問題