在C#中使用ASP.NET MVC顯示相對日期(例如:20分鐘前)的最佳庫是什麼?使用asp.net計算相對日期mvc
回答
當一個簡單的擴展方法可以做到這一點時,您不需要庫。這是一個擴展方法,我已經使用:
public static string TimeAgo(this DateTime date)
{
TimeSpan timeSince = DateTime.Now.Subtract(date);
if (timeSince.TotalMilliseconds < 1) return "not yet";
if (timeSince.TotalMinutes < 1) return "just now";
if (timeSince.TotalMinutes < 2) return "1 minute ago";
if (timeSince.TotalMinutes < 60) return string.Format("{0} minutes ago", timeSince.Minutes);
if (timeSince.TotalMinutes < 120) return "1 hour ago";
if (timeSince.TotalHours < 24) return string.Format("{0} hours ago", timeSince.Hours);
if (timeSince.TotalDays < 2) return "yesterday";
if (timeSince.TotalDays < 7) return string.Format("{0} days ago", timeSince.Days);
if (timeSince.TotalDays < 14) return "last week";
if (timeSince.TotalDays < 21) return "2 weeks ago";
if (timeSince.TotalDays < 28) return "3 weeks ago";
if (timeSince.TotalDays < 60) return "last month";
if (timeSince.TotalDays < 365) return string.Format("{0} months ago", Math.Round(timeSince.TotalDays/30));
if (timeSince.TotalDays < 730) return "last year"; //last but not least...
return string.Format("{0} years ago", Math.Round(timeSince.TotalDays/365));
}
匿名用戶提交的可能重複建議使用標題* Kelsey進行編輯,您是否可以修復以下代碼:當timeSince.TotalDays == 1.9243時,它返回「1天前」*,暗示「昨天」行中存在一個錯誤。它應該是評論而不是編輯,但我不認爲用戶能夠發表評論。 – 2012-01-02 03:53:49
我不知道任何已建立的庫存在,但http://tiredblogger.wordpress.com/2008/08/21/creating-twitter-esque-relative-dates-in-c/應該讓你開始。
這個怎麼樣? 但這是jQuery插件。不是c#。
我個人使用這個選項,它在客戶端而不是服務器上負擔繁重,對於流量很大的站點來說這很重要。您無法緩存「分鐘前」類型的信息。 – John 2012-01-24 21:20:30
Humanizer是一個很棒的圖書館。它在nuget上,除了日期之外,還包括許多字符串和枚舉的其他重要轉換。
Humanizer在TimeSpan中存在錯誤。見[這裏](https://github.com/Humanizr/Humanizer/issues/583) – redwards510 2016-12-08 19:06:06
- 1. 使用strtotime計算相對日期()
- 2. 如何計算給定日期的相對日期?
- 3. 計算上的日期 - 記錄日期中的相對
- 4. 使用php計算日期
- 5. 使用PHP計算日期
- 6. 使用Js計算日期
- 7. ASP.NET MVC計算周
- 8. 計算日期
- 9. 計算日期
- 10. 計算日期
- 11. 計算日期
- 12. 日期計算
- 13. 計算日期
- 14. 使用Asp.net mvc格式化日期
- 15. JTemplates格式使用asp.net的日期mvc
- 16. ASP MVC代碼首先使用日期時間計算列
- 17. 使用日期對象來計算日期期間的最準確方法
- 18. 用PHP計算日期
- 19. 用sqlite3計算日期
- 20. 用JavaScript計算日期
- 21. Laravel日期計算
- 22. SQL日期計算
- 23. EXTJS日期計算
- 24. Excel日期計算
- 25. 計算二日期
- 26. MySQL日期計算
- 27. firebird:計算日期
- 28. SQL計算日期
- 29. jquery - 日期計算
- 30. C#計算日期
的[我如何計算相對時間?(http://stackoverflow.com/questions/11/how-do-i-calculate-relative-time) – 2010-09-10 15:49:08