public static Validation IsCloseEnough(this Validation validation, DateTime left, DateTime right, string message) { return(validation .IsEqual(left.Year, right.Year, $"{nameof(DateTime.Year)} {message}") .IsEqual(left.Month, right.Month, $"{nameof(DateTime.Month)} {message}") .IsEqual(left.Day, right.Day, $"{nameof(DateTime.Day)} {message}") .IsEqual(left.Hour, right.Hour, $"{nameof(DateTime.Hour)} {message}") .IsEqual(left.Minute, right.Minute, $"{nameof(DateTime.Minute)} {message}") .IsEqual(left.Second, right.Second, $"{nameof(DateTime.Second)} {message}")); }