我在数据库中有一个名为tblreburial的列和一个字段reburialdate。类型是varchar,日期的格式是(yyyy / dd / mm)。在c#中我有这个查询:
string query = "Select date_format(reburialdate,'%Y/%d/%m') as reburialdate from tblreburial";
在我的声明中:
while (myReader.Read())
{
string date = (myReader["Reburialdate"].ToString())
if(date == DateTime.Now.Tostring("yyyy/dd/MM")){
//some statements
}
}
我已经尝试了很多方法,但我经常得到一个字符串未被识别为有效的DateTime。
答案 0 :(得分:1)
您可以将dataReader
转换为DateTime,并将其与DateTime.Today
var date = DateTime.Parse(myReader["Reburialdate"])
if(date.Date == DateTime.Today) {
//some statements
}
您还可以选择将格式信息传递给DateTime.Parse
。 Here是MSDN文档。
答案 1 :(得分:0)
尝试以下
var date = DateTime.ParseExact(myReader["Reburialdate"].ToString(),
"yyyy/dd/MM",
CultureInfo.InvariantCulture);
if(date.Date == DateTime.Today){
//some statements
}