我知道这些问题很严重,但我的情况对我来说似乎并不奇怪。
我的aspx页面上有textbox
日历扩展程序控件
扩展程序日期格式属性中的默认格式为“d”。
当我从日历中选择我的日期15th May 2012
时,它会给我5/15/2012
,这很好。
由于它的字符串和我的db字段是datetype,所以我使用
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
但仍然抛出异常..
请帮帮我。
答案 0 :(得分:4)
使用以下内容
DateTime dt = DateTime.ParseExact(TextBox.Text, "dd/MM/yyyy",
CultureInfo.InvariantCulture);
系统的DateTime格式与扩展程序使用的DateTiem格式之间可能存在差异。
答案 1 :(得分:3)
我假设你的开发机日期时间格式不等于MM / DD / YYYY,而是其他东西(例如DD / MM / YYYY)。查看您的计算机区域设置以查看系统日期时间格式。