如何在asp.net中获得带有秒的日期时间选择器
本文关键字:日期 选择器 时间 asp net | 更新日期: 2023-09-27 18:14:49
我有一个任务,我必须根据DateFrom和DateTo过滤记录。在mysql中,日期格式是'2014-07-18 20:03:08',就像这样。在前端,我使用DatetimePicker文本框.. DatetimePicker格式的结果给出"2014/07/09下午两点"。所以不可能比较db dateformat和datetime format。
我想要日期时间选择器与秒..请帮助我
DateTimePicker
在Value
属性中存储DateTime
。您可以添加所需的秒数:
DateFrom.Value = DateFrom.Value.AddSeconds(seconds);
datetimepicker格式结果为'2014/07/09 14:00'。
不要在MySql中使用字符串作为datetime-column的参数。相反,使用sql-parameters并直接传递DateTime
:
// add seconds if you want, but i don't see any reason for it
// maybe you want to include the To-date, then you can add a day - one second
DateTo.Value = DateTo.Value.AddDays(1).AddSeconds(-1);
using (MySqlConnection conn = new MySqlConnection("connStr"))
{
try
{
conn.Open();
string sql = @"SELECT t.From, t.To, OtherColumns...
FROM TableName t
WHERE FROM >= @From AND To <= @To";
using(MySqlCommand cmd = new MySqlCommand(sql, conn))
{
cmd.Parameters.AddWithValue("@From", DateFrom.Value);
cmd.Parameters.AddWithValue("@To", DateTo.Value);
using (MySqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
// ...
}
}
}
} catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
日期时间选择器并不总是为这种精度而设计的。
我建议使用带有文本框的自定义DateTime选择器,以允许您的用户以秒为单位输入完整的时间。