Как заставить Humanizer не отображать "нет времени", если точность больше?

Я использую Humanizer на TimeSpan с точностью 4:

(dateEnd - dateStart).Humanize(4)

И это генерирует что-то вроде этого:

2 hours, 17 minutes, 20 seconds, 141 milliseconds

Но когда оставшееся время составляет всего несколько минут (осталось меньше часа), оно генерирует:

17 minutes, 20 seconds, 141 milliseconds, no time

Есть ли способ не включать это "нет времени"?

1 ответ

Я делаю это, чтобы изменить точность в зависимости от времени выполнения:

TimeSpan runTime = dateEnd - dateStart;

if (runTime.TotalMinutes < 1)
{
    precision = 1; //49 seconds
}
else if (runTime.TotalHours < 1)
{
    precision = 2; //27 minutes, 49 seconds
}
else
{
    precision = 3; //1 day, 2 hours, 27 minutes  OR  2 hours, 27 minutes, 49 seconds
}

runTime.Humanize(precision);
Другие вопросы по тегам