C# - 在int中获取Nullable DateTime的日期差异

Arp*_*pta 0 c# datetime

我有两个Nullable类型的DateTime变量.

DateTime? date1 = new DateTime();
DateTime? date2 = new DateTime();
Run Code Online (Sandbox Code Playgroud)

我需要在int变量中获得这两个日期的差异.我试过的是 -

int daysBetweenDate = (date2 - date1).GetValueOrDefault().TotalDays;
Run Code Online (Sandbox Code Playgroud)

但我无法解决这个问题.

需要注意的是,只有当它们的值不为空时,才会计算这两个日期的差异.

xan*_*tos 7

我会写一些类似的东西:

int? daysBetweenDate = date1.HasValue && date2.HasValue ? (int?)(date2.Value - date2.Value).TotalDays : null;
Run Code Online (Sandbox Code Playgroud)

所以daysBetweenDatenull如果至少一个date1date2null.

  • 有问题的`GetValueOrDefault`不会返回`DateTime`.它返回`TimeSpan`. (3认同)