Возможно, вы заметили, что некоторые веб-приложения (например, определенные части GMail) отображают даты в более понятном для человека формате, чем просто ДД / ММ / ГГГГ.
Например, если я открою почтовое сообщение от 23-го числа (что происходит на момент написания 3 дня назад, я получу следующее:
23 декабря (3 дня назад)
Я хотел бы реализовать аналогичную логику для этого в моем собственном веб-приложении.
Например, при работе с объектом .NET TimeSpan я хотел бы преобразовать его в текст, такой как следующий:
2 месяца
3 дня
Есть ли библиотека .NET, способная сделать это уже?
Если нет, я мог бы создать что-то простое и открытое.
Я сделал здесь базовое начало:
public static class TimeSpanHelpers
{
public static string ToHumanReadableString(
this TimeSpan timeSpan)
{
if (timeSpan.TotalDays > 30)
return (timeSpan.TotalDays / 30) + " month(s)";
if (timeSpan.TotalDays > 7)
return (timeSpan.TotalDays / 7) + " week(s)";
return (timeSpan.TotalDays) + " day(s)";
}
}