字符串未被识别为有效的日期时间

本文关键字:日期 时间 有效 识别 字符串 | 更新日期: 2023-09-27 18:34:04

我知道这样的问题在SO中有很多,但我的情况对我来说似乎并不奇怪。

我的 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

但仍然是它的抛出例外..

请帮助我。

字符串未被识别为有效的日期时间

使用以下方法,

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

系统的日期时间格式与扩展器使用的 DateTiem 格式之间可能存在差异。

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