0
我試圖創建一個應用程序,只要將新行添加到數據庫,就可以彈出通知消息。我使用mysql並將默認引擎更改爲csv引擎,以便我可以使用FileSystemWatcher以檢測任何更改。當一個行被刪除時,filesystemwatcher會觸發,但是當新行被添加到數據庫時,問題是它沒有觸發已更改的事件。我還觀察到,當一行被刪除時,「修改日期」正在改變,但是當我添加一個新行不更新。請幫幫我。FileSystemWatcher沒有正確檢測到更改
private void button1_Click(object sender, EventArgs e)
{
FileSystemWatcher fsw = new FileSystemWatcher();
fsw.Path = "C:\\xampp\\mysql\\data\\doubts\\";
fsw.EnableRaisingEvents = true;
fsw.Changed += new FileSystemEventHandler(func);
}
private void func(Object obj,FileSystemEventArgs e)
{
notifyIcon1.Icon = SystemIcons.Application;
notifyIcon1.BalloonTipText =
"Addition of new row to the database detected...";
notifyIcon1.ShowBalloonTip(4000);
}
你可以發佈代碼嗎? – 2011-12-28 17:09:04
你能證實磁盤上的文件實際上已經改變了嗎?也許MySQL還沒有完成更改。 – 2011-12-28 17:28:38
您正試圖通過監視文件系統事件來檢測數據庫內的更改。這真的不是一個好方法,我認爲你遇到的麻煩突顯了這一點。 – Yuck 2011-12-28 17:41:51