我有需要在工作日和工作时间内运行的应用程序。
在应用程序配置中,我以格式设置了开始时间
Monday-Friday
9:00AM-5:30PM
现在,我有一个问题如何检查当前日期是否在日期边界内(因为时间很容易 - 用DateTime.ParseExact
简单的分支解析时间就可以了),但我不知道如何解析天数。
我试过:
DayOfWeek day = DateTime.Now.DayOfWeek;
if (day >= (DayOfWeek)Enum.Parse(typeof(DayOfWeek), sr.start_day) &&
day <= (DayOfWeek)Enum.Parse(typeof(DayOfWeek), sr.end_day))
{ /* OK */ }
sr.start_day
并且sr.end_day
是字符串
但问题发生在周末测试期间 - 显然,DayOfWeek
enum
星期天是一周的第一天(参考MSDN 页面上的评论
我想我可以用当前的代码做一些体操,但我正在寻找最易读的代码。
编辑 对不起误解-工作日不是从星期一到星期五-它们在配置文件中定义为字符串,甚至可以是从星期五到星期六-这破坏了我的原始代码。