c# – 如果精度更高,如何使Humanizer不显示“没时间”?

我正在使用
Humanizer on a TimeSpan精度4:

(dateEnd - dateStart).Humanize(4)

它产生这样的东西:

2 hours, 17 minutes, 20 seconds, 141 milliseconds

但是当剩余的时间只是几分钟(不到一个小时)时,它会产生:

17 minutes, 20 seconds, 141 milliseconds, no time

有没有办法不包括这个“没时间”?

最佳答案 我这样做是为了根据运行时间长度改变精度:

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);
点赞