把发表的时间改为几个月,几天前,几小时前,几分钟前,或几秒前

public string DateStringFromNow(DateTime dt)   
		{   
			TimeSpan span = DateTime.Now - dt;   
			if (span.TotalDays >60)   
			{   
			return dt.ToShortDateString();   
			}   
			else
			if ( span.TotalDays >30 )   
			{   
			return
			"1个月前";   
			}   
			else
			if (span.TotalDays >14)   
			{   
			return
			"2周前";   
			}   
			else
			if (span.TotalDays >7)   
			{   
			return
			"1周前";   
			}   
			else
			if (span.TotalDays >1)   
			{   
			return
			string.Format("{0}天前", (int)Math.Floor(span.TotalDays));   
			}   
			else
			if (span.TotalHours >1)   
			{   
			return
			string.Format("{0}小时前", (int)Math.Floor(span.TotalHours));   
			}   
			else
			if (span.TotalMinutes >1)   
			{   
			return
			string.Format("{0}分钟前", (int)Math.Floor(span.TotalMinutes));   
			}   
			else
			if (span.TotalSeconds >=1)   
			{   
			return
			string.Format("{0}秒前", (int)Math.Floor(span.TotalSeconds));   
			}   
			else
			{   
			return
			"1秒前";   
			}   
		}


使用:

<%# DateStringFromNow(Convert.ToDateTime(Eval("commendtime"))) %>
posted @ 2010-10-21 10:09  aksoft  阅读(199)  评论(0编辑  收藏  举报