VB.Net日期时间转换

时间:2015-06-23 06:49:31

标签: jquery vb.net datetime

我在usercontrol中有一个jquery datepicker。 在usercontrol上,我有一个属性,它将所选日期返回到包含我的usercontrol的页面。

我尝试将字符串转换为日期:

Dim MyDate As System.DateTime = System.Convert.ToDateTime(txtFromDateF.Value, System.Globalization.DateTimeFormatInfo.InvariantInfo)

我一直收到错误:

字符串未被识别为有效的DateTime。

de txtFromDateF =>中的日期23-06-2015

我认为" InvariantInfo"无论我的语言设置如何,我都会确保以正确的格式获取日期。

1 个答案:

答案 0 :(得分:1)

System.Globalization.DateTimeFormatInfo.InvariantInfo
不包含格式模式dd-MM-yyyy(26-06-2015)

来自MSDN关于InvariantCulture

  

InvariantCulture属性可用于保存数据   与文化无关的格式。这提供了一种已知格式   不要改变

要在将string转换为DateTime时使用不变格式,您的字符串值必须使用不变的文化格式模式之一进行格式化。

使用Globalization.DateTimeFormatInfo.InvariantInfo.GetAllDateTimePatterns()
检查/打印所有模式

对于自定义格式化字符串,您可以使用DateTime.TryParseExact方法

Dim datevalue As Stirng = "23-06-2015"
Dim customFormat As String = "dd-MM-yyyy"
Dim yourdate As DateTime
If DateTime.TryParseExact(datevalue, 
                          customFormat,
                          Globalization.CultureInfo.InvariantCulture,
                          Globalization.DateTimeStyles.None,
                          yourdate) = True Then
    'Use parsed DateTime value
Else
    'Notice about wrong formatted date
End If
相关问题