我有遗留的delphi代码。它包含两个给出 int 值的日期的减法。
日期时间 DatPostG = 2018/08/01
日期时间 DatStartG = 2018/01/01
在德尔福
intValue := DatPostG - DatStartG
它给了 212
在 C# 中我尝试这样做:它给出了错误的值。
TimeSpan tmElapsed = DatPostG - DatStartG; ir1= (int)Math.Round(tmElapsed.TotalMinutes, 0, MidpointRounding.ToEven);
它给了 305280
请如何构造它以给出相同的值是上面的 Delphi 代码。 总分钟数中可能有一些东西。内部转换。
因为在delphi中它允许通过减去两个日期直接给出整数值。 如何在 C# 中执行相同操作并给出 212 值。
我在 C# 中找到了解决方案。看起来像在 Delphi 中它减去两个日期并给出整数值作为天。所以我们需要在 TimeSpan 中添加 TotalDays 而不是 TotalMinutes。
TimeSpan tmElapsed = DatPostG - DatStartG; ir1= (int)Math.Round(tmElapsed.TotalDays, 0, MidpointRounding.ToEven); It give 212