Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 具有24小时格式的时间范围_C#_Timespan - Fatal编程技术网

C# 具有24小时格式的时间范围

C# 具有24小时格式的时间范围,c#,timespan,C#,Timespan,我需要测试两个值是否在一个班次内。我有一个活动的开始时间和结束时间,我需要确保开始时间不在轮班开始时间之前,结束时间不在轮班结束时间之后。问题是班次从22:00到06:00。我目前正在使用Timespan变量,但我的简单if语句无法完成任务: if (start >= shiftStartTime & end <= shiftEndTime) 任何帮助都会很好 您可以使用: if ((start >= shiftStartTime || start <= shi

我需要测试两个值是否在一个班次内。我有一个活动的开始时间和结束时间,我需要确保开始时间不在轮班开始时间之前,结束时间不在轮班结束时间之后。问题是班次从22:00到06:00。我目前正在使用Timespan变量,但我的简单if语句无法完成任务:

if (start >= shiftStartTime & end <= shiftEndTime)
任何帮助都会很好

您可以使用:

if ((start >= shiftStartTime || start <= shiftEndTime) && (end >= shiftStartTime || end <= shiftEndTime))

if((start>=shiftStartTime | | start=shiftStartTime | | | end)您是如何创建
start
,像这样
var start=TimeSpan.FromHours(22)
?我更新了问题以显示如何获取值。很遗憾,我无法更改控件。请尝试使用
Datetime
,而不是
TimeSpan
string endHour = (cmbEndHour.SelectedValue as ComboBoxItem).Content.ToString();
string endMin = (cmbEndMin.SelectedValue as ComboBoxItem).Content.ToString();
string endEvent = (endHour + ":" + endMin);
TimeSpan end = TimeSpan.Parse(endEvent);
if ((start >= shiftStartTime || start <= shiftEndTime) && (end >= shiftStartTime || end <= shiftEndTime))