我有一种方法可以计算两次之间的分钟数。像这样的东西:
DateTime UserLocalTime = DateTime.UtcNow.ConvertToUserTime(UserTimezoneID);
double TheOffset = (UserLocalTime - DateTime.UtcNow).TotalMinutes;
return TheOffset.ToString();
问题是它返回类似 119.83723 的东西,因为它正在计算分钟和秒等。
我怎样才能解决这个问题?恐怕有时它也会返回 120.11233 所以四舍五入也可能不会完全有帮助。
感谢您的建议。
Update1: (int)(Math.Round((UserLocalTime - DateTime.UtcNow).TotalMinutes)); 返回 119。
更新2:我试过这个,看起来它可以工作,但是当偏移量很奇怪时会失败(有时可能是5:30,答案应该是330分钟)
int TheOffset = (int)(Math.Round((UserLocalTime - DateTime.UtcNow).TotalHours));
TheOffset = TheOffset * 60;