|  | @@ -1,4 +1,4 @@
 | 
											
												
													
														|  | -using System;
 |  | 
 | 
											
												
													
														|  | 
 |  | +using System;
 | 
											
												
													
														|  |  using System.Diagnostics;
 |  |  using System.Diagnostics;
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  namespace Masuit.Tools.DateTimeExt
 |  |  namespace Masuit.Tools.DateTimeExt
 | 
											
										
											
												
													
														|  | @@ -8,8 +8,6 @@ namespace Masuit.Tools.DateTimeExt
 | 
											
												
													
														|  |      /// </summary>
 |  |      /// </summary>
 | 
											
												
													
														|  |      public static class DateUtil
 |  |      public static class DateUtil
 | 
											
												
													
														|  |      {
 |  |      {
 | 
											
												
													
														|  | -        private static readonly DateTime Start1970 = DateTime.Parse("1970-01-01 00:00:00");
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  |          /// <summary>
 |  |          /// <summary>
 | 
											
												
													
														|  |          /// 返回相对于当前时间的相对天数
 |  |          /// 返回相对于当前时间的相对天数
 | 
											
												
													
														|  |          /// </summary>
 |  |          /// </summary>
 | 
											
										
											
												
													
														|  | @@ -55,49 +53,49 @@ namespace Masuit.Tools.DateTimeExt
 | 
											
												
													
														|  |          /// </summary>
 |  |          /// </summary>
 | 
											
												
													
														|  |          /// <param name="dt"></param>
 |  |          /// <param name="dt"></param>
 | 
											
												
													
														|  |          /// <returns></returns>
 |  |          /// <returns></returns>
 | 
											
												
													
														|  | -        public static double GetTotalSeconds(this DateTime dt) => (dt - Start1970).TotalSeconds;
 |  | 
 | 
											
												
													
														|  | 
 |  | +        public static double GetTotalSeconds(this DateTime dt) => new DateTimeOffset(dt).ToUnixTimeSeconds();
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          /// <summary>
 |  |          /// <summary>
 | 
											
												
													
														|  |          /// 获取该时间相对于1970-01-01 00:00:00的毫秒数
 |  |          /// 获取该时间相对于1970-01-01 00:00:00的毫秒数
 | 
											
												
													
														|  |          /// </summary>
 |  |          /// </summary>
 | 
											
												
													
														|  |          /// <param name="dt"></param>
 |  |          /// <param name="dt"></param>
 | 
											
												
													
														|  |          /// <returns></returns>
 |  |          /// <returns></returns>
 | 
											
												
													
														|  | -        public static double GetTotalMilliseconds(this DateTime dt) => (dt - Start1970).TotalMilliseconds;
 |  | 
 | 
											
												
													
														|  | 
 |  | +        public static double GetTotalMilliseconds(this DateTime dt) => new DateTimeOffset(dt).ToUnixTimeMilliseconds();
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          /// <summary>
 |  |          /// <summary>
 | 
											
												
													
														|  |          /// 获取该时间相对于1970-01-01 00:00:00的微秒时间戳
 |  |          /// 获取该时间相对于1970-01-01 00:00:00的微秒时间戳
 | 
											
												
													
														|  |          /// </summary>
 |  |          /// </summary>
 | 
											
												
													
														|  |          /// <param name="dt"></param>
 |  |          /// <param name="dt"></param>
 | 
											
												
													
														|  |          /// <returns></returns>
 |  |          /// <returns></returns>
 | 
											
												
													
														|  | -        public static long GetTotalMicroseconds(this DateTime dt) => (dt - Start1970).Ticks / 10;
 |  | 
 | 
											
												
													
														|  | 
 |  | +        public static long GetTotalMicroseconds(this DateTime dt) => new DateTimeOffset(dt).Ticks / 10;
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          /// <summary>
 |  |          /// <summary>
 | 
											
												
													
														|  |          /// 获取该时间相对于1970-01-01 00:00:00的纳秒时间戳
 |  |          /// 获取该时间相对于1970-01-01 00:00:00的纳秒时间戳
 | 
											
												
													
														|  |          /// </summary>
 |  |          /// </summary>
 | 
											
												
													
														|  |          /// <param name="dt"></param>
 |  |          /// <param name="dt"></param>
 | 
											
												
													
														|  |          /// <returns></returns>
 |  |          /// <returns></returns>
 | 
											
												
													
														|  | -        public static long GetTotalNanoseconds(this DateTime dt) => (dt - Start1970).Ticks * 100 + Stopwatch.GetTimestamp() % 100;
 |  | 
 | 
											
												
													
														|  | 
 |  | +        public static long GetTotalNanoseconds(this DateTime dt) => new DateTimeOffset(dt).Ticks * 100 + Stopwatch.GetTimestamp() % 100;
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          /// <summary>
 |  |          /// <summary>
 | 
											
												
													
														|  |          /// 获取该时间相对于1970-01-01 00:00:00的分钟数
 |  |          /// 获取该时间相对于1970-01-01 00:00:00的分钟数
 | 
											
												
													
														|  |          /// </summary>
 |  |          /// </summary>
 | 
											
												
													
														|  |          /// <param name="dt"></param>
 |  |          /// <param name="dt"></param>
 | 
											
												
													
														|  |          /// <returns></returns>
 |  |          /// <returns></returns>
 | 
											
												
													
														|  | -        public static double GetTotalMinutes(this DateTime dt) => (dt - Start1970).TotalMinutes;
 |  | 
 | 
											
												
													
														|  | 
 |  | +        public static double GetTotalMinutes(this DateTime dt) => new DateTimeOffset(dt).Offset.TotalMinutes;
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          /// <summary>
 |  |          /// <summary>
 | 
											
												
													
														|  |          /// 获取该时间相对于1970-01-01 00:00:00的小时数
 |  |          /// 获取该时间相对于1970-01-01 00:00:00的小时数
 | 
											
												
													
														|  |          /// </summary>
 |  |          /// </summary>
 | 
											
												
													
														|  |          /// <param name="dt"></param>
 |  |          /// <param name="dt"></param>
 | 
											
												
													
														|  |          /// <returns></returns>
 |  |          /// <returns></returns>
 | 
											
												
													
														|  | -        public static double GetTotalHours(this DateTime dt) => (dt - Start1970).TotalHours;
 |  | 
 | 
											
												
													
														|  | 
 |  | +        public static double GetTotalHours(this DateTime dt) => new DateTimeOffset(dt).Offset.TotalHours;
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          /// <summary>
 |  |          /// <summary>
 | 
											
												
													
														|  |          /// 获取该时间相对于1970-01-01 00:00:00的天数
 |  |          /// 获取该时间相对于1970-01-01 00:00:00的天数
 | 
											
												
													
														|  |          /// </summary>
 |  |          /// </summary>
 | 
											
												
													
														|  |          /// <param name="dt"></param>
 |  |          /// <param name="dt"></param>
 | 
											
												
													
														|  |          /// <returns></returns>
 |  |          /// <returns></returns>
 | 
											
												
													
														|  | -        public static double GetTotalDays(this DateTime dt) => (dt - Start1970).TotalDays;
 |  | 
 | 
											
												
													
														|  | 
 |  | +        public static double GetTotalDays(this DateTime dt) => new DateTimeOffset(dt).Offset.TotalDays;
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          /// <summary>
 |  |          /// <summary>
 | 
											
												
													
														|  |          /// 返回本年有多少天
 |  |          /// 返回本年有多少天
 | 
											
										
											
												
													
														|  | @@ -227,4 +225,4 @@ namespace Masuit.Tools.DateTimeExt
 | 
											
												
													
														|  |              return result.CompareTo(DateTime.Parse("1800-1-1")) > 0;
 |  |              return result.CompareTo(DateTime.Parse("1800-1-1")) > 0;
 | 
											
												
													
														|  |          }
 |  |          }
 | 
											
												
													
														|  |      }
 |  |      }
 | 
											
												
													
														|  | -}
 |  | 
 | 
											
												
													
														|  | 
 |  | +}
 |