private static bool IsSourceModified(HttpRequest request)
{
bool dateModified = false;
string requestIfModifiedSinceHeader = request.Headers["If-Modified-Since"] ?? string.Empty;
DateTime requestIfModifiedSince;
DateTime.TryParse(requestIfModifiedSinceHeader, out requestIfModifiedSince);
DateTime responseLastModified = new DateTime(ResourceHandler.GetAssemblyTime(typeof(ResourceHandler).Assembly)).ToUniversalTime();
if (requestIfModifiedSince != DateTime.MinValue && responseLastModified != DateTime.MinValue)
{
requestIfModifiedSince = requestIfModifiedSince.ToUniversalTime();
if (responseLastModified > requestIfModifiedSince)
{
TimeSpan diff = responseLastModified - requestIfModifiedSince;
if (diff > TimeSpan.FromSeconds(1))
{
dateModified = true;
}
}
}
else
{
dateModified = true;
}
return(dateModified);
}