簡體   English   中英

檢查自日期以來是否經過了幾天

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM