【发布时间】:2020-08-06 18:41:06
【问题描述】:
我有一个约会安排应用程序,您可以在其中设置约会时间,当您设置该时间时,我想检查他们的约会是否与任何其他约会时间重叠,如果是,那么我想阻止他们安排约会. 我有 2 个包含约会开始和结束时间的列表:
public List<DateTime> AppointmentStartTimes = new List<DateTime>();
public List<DateTime> AppointmentEndTimes = new List<DateTime>();
如果开始时间介于这两个列表中的任何一个值之间,我希望他们无法安排约会,谢谢,我如何将时间与两个列表中的值进行比较?
【问题讨论】:
-
你能再解释一下吗。如何连接开始时间和结束时间?按列表索引?
-
它们是存储在 MySQL 数据库中的不同字段中的不同时间,我有一个 Windows 窗体应用程序有 2 个 DateTimePickers,它们允许您选择开始时间和日期,以及当他们单击我想要的添加约会按钮时比较开始时间的值,看看他们选择的开始时间是否在 AppointmentStartTimes 列表中的任何位置。
-
那么,您要检查该值是否已经存在?
-
是的,我想检查开始时间是否介于 StartTimes 列表中的任何时间和 EndTimes 列表中的任何值之间。
-
所以
AppointmentStartTimes[0]和AppointmentEndTimes[0]描述一个 约会然后AppointmentStartTimes[1]和AppointmentEndTimes[1]描述另一个?为什么没有Appointment具有 start 和 end 属性的类,然后只有 one 列表? -- 但基本上,每个索引都需要:var start = AppointmentStartTimes[index]; var end = AppointmentEndTimes[index]; if ((start <= newStart && end >= newStart) || (start <= newEnd && end >= newEnd)) { [handle overlap] } else { [handle not an overlap for THIS index] }.
标签: c# mysql asp.net-mvc winforms