您在要与当前日期的数据库来比较日期您的意见说。只有两种可能的方式来做到这一点:
- 在C#
- 在数据库
C#
你必须从数据库中选择的值。你得到一个DateTime
当你这样做是正确,如:
using (SqlCommand cmd = new SqlCommand("SELECT DateColumn FROM Table", conn))
using (SqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
DateTime datecolumn = reader["DateColumn"] as DateTime? ?? DateTime.MinValue;
if (dateColumn.Date == DateTime.Now.Date)
{
...
}
}
}
SQL
你需要传递的日期值SQL。这必须使用参数化查询完成:
using (SqlCommand cmd = new SqlCommand("....", conn))
{
cmd.Parameters.AddWithValue("@dateParameter", DateTime.Now.Date);
...
}
为什么你需要'DateTime.Now.Date'是DateTime类型?对于错误,你的Shortdate格式不是'MM/dd/yyyy' – V4Vendetta 2013-03-26 07:47:39
'DateTime.Now.Date.ToShortDateString()'确实输出'MM/dd/yyyy'格式的东西吗? – 2013-03-26 07:48:34
我希望它与datetime格式的数据库中的expDate值进行比较。 – Freelancer 2013-03-26 07:48:43