0

我知道这样的问题很多,但我的情况对我来说似乎有点奇怪。

我的 aspx 页面上有一个textbox带有日历扩展器的控件

扩展器日期格式属性中的默认格式为“d”。当我15th May 2012从日历中选择我的日期时,它给了我5/15/2012,这很好。

由于它是一个字符串并且我的数据库字段是日期时间类型,所以我正在使用

Convert.ToDateTime(TextBox.Text);   // TextBox.Text = 5/15/2012

但它抛出异常, string was not recognized as valid datetime.

然后我更改代码并使用DateTime.Parse()但问题仍然存在。然后我尝试像这样重新格式化日期,

Convert.ToDateTime(string.Format("0:MM-dd-yyyy",TextBox.Text)).Date

但它仍然抛出异常..

请帮我。

4

2 回答 2

4

使用以下,

DateTime dt = DateTime.ParseExact(TextBox.Text, "dd/MM/yyyy", 
                                  CultureInfo.InvariantCulture);

您的系统的 DateTime 格式和扩展器使用的 DateTiem 格式之间可能存在差异。

于 2012-05-13T07:59:24.810 回答
3

您的开发机器日期时间格式不等于 MM/DD/YYYY,而是其他的(例如 DD/MM/YYYY)。查看您的计算机区域设置以查看您的系统日期时间格式。

于 2012-05-13T07:58:51.270 回答