public static bool HasNotModifiedSince(this IRequest httpReq, DateTime? dateTime)
{
if (!dateTime.HasValue) return false;
var strHeader = httpReq.Headers[HttpHeaders.IfModifiedSince];
try
{
if (strHeader != null)
{
var dateIfModifiedSince = DateTime.ParseExact(strHeader, "r", null);
var utcFromDate = dateTime.Value.ToUniversalTime();
//strip ms
utcFromDate = new DateTime(
utcFromDate.Ticks - (utcFromDate.Ticks % TimeSpan.TicksPerSecond),
utcFromDate.Kind
);
return utcFromDate <= dateIfModifiedSince;
}
return false;
}
catch
{
return false;
}
}