public DateTimeSpan(DateTimeOffset start, DateTimeOffset end) : this(start.UtcDateTime, end.UtcDateTime) { }(3) Extension methods Add and Subtract for DateTime and DateTimeOffset
public static partial class ExtensionMethods_DateTime { //______________________________________________________________________ public static DateTime Add(this DateTime dt, DateTimeSpan dts) { return dt.AddYears(dts.Years) .AddMonths(dts.Months) .AddDays(dts.Days) .AddHours(dts.Hours) .AddMinutes(dts.Minutes) .AddSeconds(dts.Seconds) .AddMilliseconds(dts.Milliseconds); } //______________________________________________________________________ public static DateTime Subtract(this DateTime dt, DateTimeSpan dts) { return dt.AddYears(-dts.Years) .AddMonths(-dts.Months) .AddDays(-dts.Days) .AddHours(-dts.Hours) .AddMinutes(-dts.Minutes) .AddSeconds(-dts.Seconds) .AddMilliseconds(-dts.Milliseconds); } //______________________________________________________________________ }
public static partial class ExtensionMethods_DateTimeOffset { //______________________________________________________________________ public static DateTimeOffset Add(this DateTimeOffset dto, DateTimeSpan dts) { return dto.AddYears(dts.Years) .AddMonths(dts.Months) .AddDays(dts.Days) .AddHours(dts.Hours) .AddMinutes(dts.Minutes) .AddSeconds(dts.Seconds) .AddMilliseconds(dts.Milliseconds); } //______________________________________________________________________ public static DateTimeOffset Subtract(this DateTimeOffset dto, DateTimeSpan dts) { return dto.AddYears(-dts.Years) .AddMonths(-dts.Months) .AddDays(-dts.Days) .AddHours(-dts.Hours) .AddMinutes(-dts.Minutes) .AddSeconds(-dts.Seconds) .AddMilliseconds(-dts.Milliseconds); } //______________________________________________________________________ }