一次没想好,第二次就要想到做好
标签:
JavaScript
下面一段程序,功能是每天定时发送邮件,星期天不执行动作。
1 int actionHour = 08; 2 int currentYear = e.SignalTime.Year; 3 int currentMonth = e.SignalTime.Month; 4 int currentDay = e.SignalTime.Day; 5 int currentHour = e.SignalTime.Hour; 6 7 var ci = new CultureInfo("en-US"); 8 DateTime dt = new DateTime(currentYear, currentMonth, currentDay); 9 string wn = ci.DateTimeFormat.DayNames[(int)dt.DayOfWeek].ToString();10 11 if (wn.CompareTo("Sunday") != 0 && currentHour == actionHour)12 { 13 //发送邮件14 }
某一天客户说,星期六也不用发送邮件。接到客户要求,对程序时行修改。
1 if ((wn.CompareTo("Sunday") != 0 || wn.CompareTo("Saturday") != 0) && currentHour == actionHour)2 { 3 //发送邮件4 }
上面的哪个星期不发送,哪个星期发送,就是变数,第一次在开发时,也许想不起有这变数,第二次客户有这要求,就会想这是一个变数。
因此需要把这个星期列入一个阵列内。
1 string[] w = { "Sunday","Saturday"}; //客户要求这些变量,就更改此。 2 3 foreach (string s in w) 4 { 5 if (wn.CompareTo(s) != 0 && currentHour == actionHour) 6 { 7 ////发送邮件 8 } 9 break;10 }
写到这里,Insus.NET看到上面行3至9的语法,它们是可以改为更可读性的代码:
1 if (!((IList)w).Contains(wn) && currentHour == actionHour)2 { 3 //发送邮件4 }
上面行1的代码,是把阵列转为IList对象,并使用Contains方法。
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦