如果精度更大,如何使人性化器不显示"no time"?



我在TimeSpan上使用Humanizer,精度为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);

最新更新