[英]check if number of days has passed since a date
我试图检查自日期以来是否经过了一定的天数,然后它是否更改了网格行的颜色。 因此,如果日期是2016年12月11日,我想检查自该日期以来是否已经过10天。
if (dt.Date > dt.Date.AddDays(10))
{
e.Item.Style.Add("background-color", "#C400F9");
break;
}
因此,将第12天增加10天将是22/11/2016,而由于今天是23/11/2016,这意味着已经过去了10天。 但是网格中的所有行都将变为颜色。 我是否需要添加另一个if语句来比较日期+经过的日期与今天的日期?
您是要使用今天的日期吗? 如果是这样,那就是DateTime.Now
:
if (DateTime.Now > dt.Date.AddDays(10))
目前,您正在将dt.Date
与同一日期加10天进行比较-正如其他人指出的那样,这将永远无法实现。
更新。 正如Tim在评论中建议的那样,使用DateTime.Today
可能更合适。
DateTime d1;
DateTime d2;
if((d1 - d2).TotalDays == 10)
{
//some code
}
您的问题在于您的比较。 您试图确定dt
是否大于dt
+10。显然,它永远不会成立。
您的比较永远不会是正确的,就像这样做:
如果(10> 10 + 10)...
您要做的是使用DateTime.Now将日期之后的10天与今天进行比较。
if (DateTime.Now.Date> dt.Date.AddDays(10).Date)
{
e.Item.Style.Add("background-color", "#C400F9");
break;
}
if (DateTime.Now.Date > dt.Date.AddDays(10))
{
}
您可以尝试一下吗,X下方是您要与之比较的日期(它可能来自db或硬编码日期)
if (X > dt.Date.AddDays(10))
{
e.Row.Attributes.Add("background-color", "#C400F9");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.