我想知道如何计算两个 DateTimes 之间的百分比,我有一个 BackgroundWorker 执行,直到达到提供的 DateTime,该部分工作正常,我只想在 UI 中显示工人的完成百分比是多少。
我尝试使用以下方法:
var now = DateTime.Now;
var executeUntil = DateTime.Now..AddHours(4).AddMinutes(10);
var percentage = (int)(( executeUntil.Ticks * 100 ) / now.Ticks );
但总是返回 1,我猜这是因为 Ticks 是一个很长的数字,并且以某种方式截断了除法。
有什么建议么?