检查日期是否在日期范围内

3
我有一个GridView,如果某列中的日期在特定日期范围内,我想改变该行的颜色。
DateTime dt = new DateTime();
if (DateTime.TryParse(c.Text, out dt))
{
    if (dt.Date >= DateTime.Now.AddDays(Mod.ValidUntilDays).Date && dt.Date <= DateTime.Now.AddDays(Mod.ValidUntilDays).Date)
     {
         e.Item.Style.Add("background-color", "#FF0303");
     }
}

因此,从网格中传递的值为dt.Date等于23/09/2016 00:00:00,我想要检查的日期范围是25/09/2016 00:00:00Mod.ValidUntilDays只是将5天添加到今天的日期。
我的目标是检查23/09/2016 00:00:00是否在5天的范围内,它确实在,但代码从未进入if语句。
1个回答

7

您希望日期大于等于5天,并小于等于5天。因此,除非它等于5天,否则它将返回false。我认为您的意思是这个:

DateTime dt = new DateTime();
if (DateTime.TryParse(c.Text, out dt))
{
  DateTime now = DateTime.Now;
  if (dt.Date >= now.Date && dt.Date <= now.AddDays(Mod.ValidUntilDays).Date)
  {
     e.Item.Style.Add("background-color", "#FF0303");
  }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接