У меня есть приложение, которое использует FileSystemWatcher для отслеживания изменений в файлах. Проблема в том, что когда он ловит эти события, ему нужно вносить изменения в эти документы (обновлять ссылки), и это, конечно, вызывает события снова, бросая приложение в цикл.
Итак, я попробовал это:
UnWireEvents(); //Turn off the events while updating the documents
ChangeAllLinks();
WireEvents(); //Turn the events back on
private void WireEvents()
{
_monitor.FileChanged += new EventHandler(_monitor_FileChanged);
}
private void UnWireEvents()
{
_monitor.FileChanged -= new EventHandler(_monitor_FileChanged);
}
Но, похоже, это не работает, приложение все еще зацикливается. Так почему же это не работает, и что мне нужно делать вместо этого?