[英]Compare date string with current date?
我正在從sql數據讀取器讀取日期值到這樣的字符串數據類型變量。
electionPosDate = Convert.ToDateTime(reader["elecPODate"]).ToString("dd/MM/yyyy");
如何在if條件下將其與當前系統日期進行比較?
if(electionPosDate==_____?)
{
}
由於electionPosDate
是一個string
,而不是DateTime
,你需要比較它;
if(electionPosDate == DateTime.Now.ToString("dd/MM/yyyy"))
但更重要的是,我覺得你做錯了什么。 如果elecPODate
列已經是datetime
類型,則可以使用SqlDataReader.GetDateTime
方法將值作為DateTime
。 在您的情況下,您將string
解析為DateTime
,然后再將其轉換為string
。 這完全沒必要。 您應始終選擇適合您的數據類型的最佳列類型。
例如,如果此elecPODate
列是第一列或您的閱讀器,則可以使用;
DateTime electionPosDate = reader.GetDateTime(0);
並比較一下;
if(electionPosDate.Date == DateTime.Now.Date)
請閱讀: 糟糕的習慣:選擇錯誤的數據類型
使用DateTime
Date
屬性,如果要僅檢查Date部分,並且獲取當前日期使用DateTime.Now
,但僅限日期部分使用DateTime.Now.Date
:
DateTime electionPosDate = Convert.ToDateTime(reader["elecPODate"]);
if(electionPosDate.Date ==DateTime.Now.Date)
{
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.