如何使Humanizer不显示“没有时间”如果精度更大

本文关键字:没有时间 如果 精度 何使 Humanizer 显示 | 更新日期: 2023-09-27 18:10:22

我在TimeSpan上使用Humanizer,精度为4:

(dateEnd - dateStart).Humanize(4)

它生成了这样的东西:

2 hours, 17 minutes, 20 seconds, 141 milliseconds

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

17 minutes, 20 seconds, 141 milliseconds, no time

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

如何使Humanizer不显示“没有时间”如果精度更大

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

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