diff --git a/src/Orchard.Web/Modules/Orchard.AuditTrail/Helpers/DateTimeExtensions.cs b/src/Orchard.Web/Modules/Orchard.AuditTrail/Helpers/DateTimeExtensions.cs index 0289ca343..ad5eb75a9 100644 --- a/src/Orchard.Web/Modules/Orchard.AuditTrail/Helpers/DateTimeExtensions.cs +++ b/src/Orchard.Web/Modules/Orchard.AuditTrail/Helpers/DateTimeExtensions.cs @@ -6,8 +6,11 @@ namespace Orchard.AuditTrail.Helpers { if (value == null) return null; - var v = value.Value; - return new DateTime(v.Year, v.Month, v.Day, 0, 0, 0, 0, v.Kind); + return Earliest(value.Value); + } + + public static DateTime Earliest(this DateTime value) { + return new DateTime(value.Year, value.Month, value.Day, 0, 0, 0, 0, value.Kind); } public static DateTime? Latest(this DateTime? value) { @@ -17,5 +20,9 @@ namespace Orchard.AuditTrail.Helpers { var v = value.Value; return new DateTime(v.Year, v.Month, v.Day, 23, 59, 59, 999, v.Kind); } + + public static DateTime Latest(this DateTime value) { + return new DateTime(value.Year, value.Month, value.Day, 23, 59, 59, 999, value.Kind); + } } } \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.AuditTrail/Services/AuditTrailManager.cs b/src/Orchard.Web/Modules/Orchard.AuditTrail/Services/AuditTrailManager.cs index 82ad787b7..a9f9f0af0 100644 --- a/src/Orchard.Web/Modules/Orchard.AuditTrail/Services/AuditTrailManager.cs +++ b/src/Orchard.Web/Modules/Orchard.AuditTrail/Services/AuditTrailManager.cs @@ -207,8 +207,8 @@ namespace Orchard.AuditTrail.Services { } public IEnumerable Trim(TimeSpan retentionPeriod) { - var dateThreshold = _clock.UtcNow.Date - retentionPeriod; - var query = _auditTrailRepository.Table.Where(x => x.CreatedUtc < dateThreshold); + var dateThreshold = (_clock.UtcNow.Latest() - retentionPeriod); + var query = _auditTrailRepository.Table.Where(x => x.CreatedUtc <= dateThreshold); var records = query.ToArray(); foreach (var record in records) {