【发布时间】:2014-04-14 05:39:03
【问题描述】:
您好,我正在开发一个应用程序,因为我需要将日期存储在 sql server 2005 数据库中,该数据库是从前端的文本框中检索的。在前端,允许用户从 JQuery UI DatePicker 插件中选择一个日期。
我得到的错误如下:
String was not recognized as a valid DateTime.
我的代码是:
db.eventDate = DateTime.Parse(txtDate.Text, new CultureInfo("en-US").DateTimeFormat);
【问题讨论】:
-
确保输入是您尝试转换为指定cultureinfo 的正确格式。您提供的输入格式是什么?
-
例如:如果我从 JQuery UI Datepicker 中选择一个日期,它会像 14/04/2014 在文本框中。我正在尝试将该文本框数据(即 14/04/2014)转换为 DateTime 格式。
-
对。这正是它不起作用的原因 - 您的格式是英国格式。您需要为其提供 uk 格式,以便在这种情况下将其解析为正确的日期时间格式,然后将其转换为 us 格式。但是在 jquery ui 选择器中,我相信您可以将默认输入类型/格式设置为 en-us,然后将格式正确设置为 us 格式,然后您的解析将正常工作。
-
在调试代码时我知道,文本框日期的格式为 14/04/2014,在将其转换为 DateTime 类型后,它将保持为 1/1/0001 12:00 AM
-
是的,因为这是无法解析时的默认值(我相信)。就像我说的,按照我的建议去做
标签: c# asp.net datetime culture