Существует ли «отпечаток папки», позволяющий определить, изменилось ли содержимое папки между двумя моментами времени? ЯC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Существует ли «отпечаток папки», позволяющий определить, изменилось ли содержимое папки между двумя моментами времени? Я

Сообщение Anonymous »


Я ищу самый быстрый способ (на C#/ASP.NET) определить, изменилось ли что-либо внутри папки между двумя моментами времени. Мне не нужно знать файлы, общий размер или что-либо еще о папке. Мне просто нужно знать, изменилось ли что-нибудь.

Поскольку у меня нет доступа к внешней области, в которой будет работать такой метод обнаружения изменений папок, я не могу использовать FileSystemWatcher, который должен быть удален, когда он больше не нужен (он реализует IDisposable и из-за архитектуры того, что мне нужно, я не могу использовать его на практике).

Было бы идеально, если бы существовал какой-то GUID «отпечатка папки», который менялся бы при изменении содержимого папки. Затем я мог бы просто сравнить GUID последнего отпечатка пальца с текущим отпечатком пальца и вернуть true, если два отпечатка пальца были разными, что указывает на то, что в папке что-то изменилось.

В идеале это будет работать точно так же, как значение, возвращаемое функцией Assembly.GetEntryAssembly().ManifestModule.ModuleVersionId, которая дает вам GUID «отпечатка пальца» текущей сборки вашего приложения, что затем позволяет вам обнаружить если ваше приложение было перекомпилировано между двумя моментами времени.

Примерно так:

Примечание: «System.IO.GetFolderFingerprint()» — это воображаемый метод.

публичный статический класс FolderChangeChecker { частная константная строка _path = "c:/path/to/folder"; частный статический Guid _originalFingerprint = System.IO.GetFolderFingerprint(_path); public static bool FolderHasChanged() { return System.IO.GetFolderFingerprint(_path) != _originalFingerprint; } } Пожалуйста, дайте мне знать, если есть способ сделать это быстро.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»