C# 检查开始时间和结束时间之间的时间差应为1小时30分钟,如果超过该值,则不应继续
我正在asp.net core中安排一个时间表,我希望所有讲座的时间仅为1小时30分钟,如果在这段时间内意外或故意减少或增加上课时间,则应在运行时发出错误消息。startTime和EndTime在viewModel中有DT DateTime,在模型的TimeSpan中,我执行了解析以检查其他类在调度时的startTime和EndTime 公共异步任务创建(TimetableViewModel TimetableViewModel) { 尝试 { var startTime=TimeSpan.Parse(timetableViewModel.startTime.ToString(“hh:mm”); var endTime=TimeSpan.Parse(timetableViewModel.endTime.ToString(“hh:mm”); 布尔匹配=假; var record=_context.TimeTables.Where(x=>x.RoomID==timetableViewModel.RoomID&&x.Day==timetableViewModel.Day).ToList(); foreach(记录中的var项目) {C# 检查开始时间和结束时间之间的时间差应为1小时30分钟,如果超过该值,则不应继续,c#,asp.net,asp.net-core,C#,Asp.net,Asp.net Core,我正在asp.net core中安排一个时间表,我希望所有讲座的时间仅为1小时30分钟,如果在这段时间内意外或故意减少或增加上课时间,则应在运行时发出错误消息。startTime和EndTime在viewModel中有DT DateTime,在模型的TimeSpan中,我执行了解析以检查其他类在调度时的startTime和EndTime 公共异步任务创建(TimetableViewModel TimetableViewModel) { 尝试 { var startTime=TimeSpan.Pa
如果((startTime>=item.startTime&&startTime=item.startTime&&endTime可能我遗漏了什么,但TimeSpan允许您执行时间算术,因此如果您希望检查授课时间是否为1小时30分钟,那么您需要做的肯定是:
string startTime = "10:00";
string endTime ="11:30";
string lecturePeriod = "1:30";
TimeSpan start = TimeSpan.Parse(startTime);
TimeSpan end = TimeSpan.Parse(endTime);
bool matched = (end - start) == lecturePeriod;
您已经声明在输入时验证时间,我假设这是为了确保结束时间在开始时间之后,并且时间不会与午夜重叠。这是否回答了您的问题?我不确定如何计算小时和分钟的差异,并为用户显示消息