private DateTime GetFolderLastModifiedTimeUtc(string sitePath)
{
try
{
var lastModifiedTime = File.GetLastWriteTimeUtc(sitePath);
foreach (var filePath in Directory.EnumerateFileSystemEntries(sitePath, "*", SearchOption.AllDirectories))
{
var fileLastWriteTimeUtc = File.GetLastWriteTimeUtc(filePath);
if (fileLastWriteTimeUtc > lastModifiedTime)
{
lastModifiedTime = fileLastWriteTimeUtc;
}
}
return lastModifiedTime;
}
catch (PathTooLongException e)
{
_logger.ErrorFormat(e, "Failed to retrieve last modified time for '{0}'.", sitePath);
return DateTime.MinValue;
}
}