2011-06-12 50 views
0

我想要检测给定的一天是否在使用C#.NET的一周的两天之间。因此,情况将是星期一至星期六发现星期二(可能是DateTime.Now.DayOfWeek)。同样,我需要检测给定的一天是在一周中的某两天之间,并以不同的方式对待它。这两天是静态的,并且给定的日期必须是动态的
,因为它取决于用户访问系统的哪一天。C#检测一周中两天之间的给定日期

我希望这个问题很清楚,很多提前感谢。

+0

的两天就能环绕一周的结束?即你可以周五到周一吗? – svick 2011-06-12 12:21:28

+0

是的..如果逻辑上没有差异,我很乐意接受星期一至星期五作为示例场景。在我的问题域中,我有两个场景需要填写。星期一至星期六和星期日本身。 – Chin 2011-06-12 12:25:23

回答

1
bool IsBetween(DayOfWeek min, DayOfWeek max, DayOfWeek toCheck) 
{ 
    if (min <= max) 
     return toCheck >= min && toCheck <= max; 

    return toCheck >= min || toCheck <= max; 
} 
+0

我可以使用上述相同的逻辑来检测访问时间吗?如检测10am(访问时间 - 动态)是在上午6点到晚上10点之间? – Chin 2011-06-12 12:43:48

+0

@Chin,当然可以。 – svick 2011-06-12 12:55:39

3
var currentDay = DateTime.Now.DayOfWeek; 
bool isBetween = DayOfWeek.Monday < currentDay 
    && currentDay < DayOfWeek.Saturday; 
+0

此检查是独占的,因此它在星期二至星期五返回true。 – svick 2011-06-12 12:35:46

相关问题