private void AddAllChanges(string path) { if (File.GetLastWriteTime(folder) <= changeRepository.GetDateTimeLastChange()) { return; } foreach (var dir in Directory.GetDirectories(path)) { AddAllChanges(dir); } foreach (var file in Directory.GetFiles(path, "*.csv")) { if (File.GetLastAccessTime(file) > (changeRepository.GetByFullPath(file)?.LastChange ?? DateTime.MinValue)) { AddChangeNow(file); } } }