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

use*_*789 1 c# asp.net datetime date

我有一个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");
     }
}
Run Code Online (Sandbox Code Playgroud)

所以来自网格的值dt.Date等于23/09/2016 00:00:00我要检查的日期范围25/09/2016 00:00:00.Mod.ValidUntilDays只需在今天的日期增加5天.

所以我要做的是检查是23/09/2016 00:00:00在5天的范围内,但是代码永远不会进入if语句.

ADy*_*son 6

您要求日期> = 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");
  }
}
Run Code Online (Sandbox Code Playgroud)