我有这段代码:
Dim birthdaystring As String = MonthBirth.SelectedValue.ToString & "/" & DayBirth.SelectedValue.ToString & "/" & YearBirth.SelectedValue.ToString
Dim birthday As DateTime = Convert.ToDateTime(birthdaystring)
产生错误(String未被识别为有效的DateTime。)
字符串是“01/31/1963”。
任何帮助都将不胜感激。
感谢。
答案 0 :(得分:2)
问题可能是用于解析日期的文化需要MM / dd / yyyy格式而不是dd / MM / yyyy格式。
不是创建字符串并解析它,而是直接创建DateTime
值:
Dim birthday As New DateTime(YearBirth.SelectedValue, MonthBirth.SelectedValue, DayBirth.SelectedValue)
答案 1 :(得分:1)
不要创建稍后尝试解析为日期的字符串,而是尝试:
Dim birthday As DateTime = new DateTime(_
CType(YearBirth.SelectedValue, Integer), _
CType(MonthBirth.SelectedValue, Integer), _
CType(DayBirth.SelectedValue, Integer))
答案 2 :(得分:1)
尝试将其更改为:
DateTime.Parse(birthdaystring);
我猜它会起作用,但如果没有 - 你可以在解析中添加第二个参数来说明你输入的格式,即:
DateTime.Parse(birthdaystring,"MM/dd/yyyy");