我使用javascript选择日期并显示格式为(11-05-2015 17:37)
我尝试将其解析为日期时间,如下面的代码
DateTime taskDate = Convert.ToDateTime(txtDate.Text);
并将其保存到我的日期库中,如
TO_DATE('" + createOn + "')
它给我和错误调用“字符串未被识别为有效的DateTime。”
任何人都有其他方法将其解析为邮票时间吗?
txtDate.Text值是27-05-2015 09:37。
答案 0 :(得分:2)
Convert.ToDateTime
使用您当前的线程文化格式。
如果您转换的字符串具有其他格式,则需要使用DateTime.ParseExact
并明确提供适当的格式。
例如,在你的情况下它应该是
DateTime taskDate = DateTime.ParseExact("11-05-2015 17:37", "dd-MM-yyyy HH:mm", CultureInfo.InvariantCulture);
另请查看custom datetime format strings以供参考。
答案 1 :(得分:1)
您可以使用DateTime.ParseExact或DateTime.TryParseExact
检查以下代码:
DateTime taskDate = DateTime.ParseExact(txtDate.Text, "dd-MM-yyyy hh:mm", CultureInfo.InvariantCulture);
或者
DateTime taskDate;
if (DateTime.TryParseExact(txtDate.Text, "dd-MM-yyyy hh:mm", CultureInfo.InvariantCulture, DateTimeStyles.None, out taskDate))
{
//code if date valid
}
else
{
//code if date invalid
}