【发布时间】:2018-08-01 09:19:40
【问题描述】:
我目前正在尝试检查结束日期可能为空的日期是否重叠。使用我当前的代码,如果发生场景 1,我可以显示冲突消息。但是,我无法显示方案 2 的冲突消息。例如,
场景 1:结束日期不为空
2018 年 1 月 7 日至 2018 年 1 月 9 日
2018 年 1 月 6 日至 2018 年 1 月 9 日
结果:有冲突
场景 2:结束日期为空
2018 年 1 月 7 日为空
2018 年 1 月 6 日至 2018 年 1 月 9 日
结果:有冲突
这是我的代码:
if ((A.StartDate < B.EndDate) &&
(B.StartDate < A.EndDate)) {
Console.WriteLine("Conflict");
}
【问题讨论】:
-
您只需要在尝试使用它之前检查 enddate 是否为空。如果它为空,则将其替换为一些名义值(例如,适当的 MaxDate 或 MinDate),这将允许 if 语句中的比较得出正确的结论。