| | |
| | | private const int Day = 24 * Hour; |
| | | private const int Month = 30 * Day; |
| | | |
| | | ///// <summary> |
| | | ///// 时间转换 |
| | | ///// 少于1天 显示 时分 |
| | | ///// 少于一年 显示 月日 |
| | | ///// 大于一年 显示 年 |
| | | ///// </summary> |
| | | ///// <param name="dateTime"></param> |
| | | ///// <returns></returns> |
| | | //public static string ToFriendlyDisplay(this DateTime dateTime) |
| | | //{ |
| | | // var ts = DateTime.Now - dateTime; |
| | | // var delta = ts.TotalSeconds; |
| | | // if (delta < Day) |
| | | // { |
| | | // //显示 时:分 |
| | | // return dateTime.ToString("HH:mm"); |
| | | // } |
| | | // else if (delta < 12 * Month) |
| | | // { |
| | | // //显示 月:日 |
| | | // return dateTime.ToString("MM/dd"); |
| | | // } |
| | | // else |
| | | // { //显示 年 |
| | | // return dateTime.ToString("yyyy"); |
| | | // } |
| | | //} |
| | | /// <summary> |
| | | /// 时间转换 |
| | | /// 少于1天 显示 时分 |
| | |
| | | /// <returns></returns> |
| | | public static string ToFriendlyDisplay(this DateTime dateTime) |
| | | { |
| | | var ts = DateTime.Now - dateTime; |
| | | var delta = ts.TotalSeconds; |
| | | if (delta < 24 * Hour) |
| | | { |
| | | //显示 时:分 |
| | | return dateTime.ToString("HH:mm"); |
| | | } |
| | | else if (delta < 12 * Month) |
| | | { |
| | | //显示 月:日 |
| | | return dateTime.ToString("MM/dd"); |
| | | } |
| | | else |
| | | { //显示 年 |
| | | var nowDateTime = DateTime.Now; |
| | | var subYear = nowDateTime.Year - dateTime.Year; |
| | | var subMonth = nowDateTime.Month - dateTime.Month; |
| | | var subDay = nowDateTime.Day - dateTime.Day; |
| | | |
| | | //年份差值大于0 |
| | | if(subYear > 0) |
| | | { |
| | | //显示 年 |
| | | return dateTime.ToString("yyyy"); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | //相同年份,月份差值大于0 |
| | | if (subMonth > 0) |
| | | { |
| | | //显示 月:日 |
| | | return dateTime.ToString("MM/dd"); |
| | | } |
| | | else |
| | | { |
| | | //相同月份,日期差值大于0 |
| | | if (subDay > 0) |
| | | { |
| | | //显示 月:日 |
| | | return dateTime.ToString("MM/dd"); |
| | | } |
| | | else |
| | | { |
| | | //同一天显示 时:分 |
| | | return dateTime.ToString("HH:mm"); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 时间转换 |
| | | /// 少于1天 显示 时分 |