直到未知的DateTime的分钟数

Dar*_*ius 0 c#

如果我有一个DateTime设置为将来的变量,并且我不知道它是否设置为Utc或Local time,那么如何找到直到现在的分钟数?像这样:

DateTime futureTime;
// futureTime is set to some value...
int minutesUntilFutureTime = futureTime - DateTime.Now;
Run Code Online (Sandbox Code Playgroud)

Hog*_*gan 6

您需要一个TimeSpan对象

 TimeSpan untilFutureTime = futureTime - DateTime.Now;
Run Code Online (Sandbox Code Playgroud)

TimeSpan具有一个名为分钟和总分钟数的属性,总分钟数是您想要的。

 int minutesUntilFutureTime = untilFutureTime.TotalMinutes;
Run Code Online (Sandbox Code Playgroud)

doc https://docs.microsoft.com/zh-cn/dotnet/api/system.timespan?view=netframework-4.8

  • 分钟仅返回TimeSpan的分钟部分。因此,如果TimeSpan为2小时3分钟,则分钟数将返回3,而不是123 (2认同)