什么是从sql server获取日期时间并将其转换为使用友好字符串的最佳方法:
如果超过1天> 1天前。
超过7天> 1周前
1年前
3分钟前
56秒前
等。这可以轻松完成吗?
答案 0 :(得分:6)
您最好的选择是制作DateTime
扩展方法:
public static class DateTimeExtensions
{
public static string ToRelative(this DateTime value)
{
DateTime now = DateTime.Now; //maybe UtcNow if you're into that
TimeSpan span = new TimeSpan(now.Ticks - value.Ticks);
double seconds = Math.Abs(ts.TotalSeconds);
if (seconds < 60)
return string.Format("{0} seconds ago", span.Seconds);
if (seconds < 2700)
return string.Format("{0} minutes ago", span.Minutes);
if (seconds < 86400)
return string.Format("{0} hours ago", span.Hours);
// repeat for greater "ago" times...
}
}
然后按照您的DateTime
值拨打电话:
myDateTime.ToRelative();