Ajax CalendarExtender中的字符串到日期时间转换。

时间:2015-06-19 10:54:15

标签: sql asp.net ajax vb.net type-conversion

在日历控件中,当我选择日期时,它会以这种格式显示在TextBox中: 15-06-2015 00:00:00表示“dd-mm- yyyy hh:mm:ss“。

之后我使用

将TextBox文本转换为DateTime数据类型
  

DateTime dt = Convert.ToDateTime(txtDate.Text);

并存储到数据库中。

在数据库中,它以这种格式存储: 2015-06-15表示“yyyy-mm-dd”,因为列数据类型为Date。

在Ajax CalendarExtender中:现在我正在使用AjexControlToolkit中的CalendarExtender。我不使用format属性。默认情况下,它会以以下格式显示在文本框中: 6/16/2015 menas“mm / dd / yyyy”

尝试使用相同的代码将Textbox字符串转换为datetime数据类型

  

DateTime dt = Convert.ToDateTime(txtDate.Text);

但显示错误 “字符串未被识别为有效日期时间”

即使我也尝试

  

DateTime dt = DateTime.Parse(txtDate.Text);

但每次都会显示相同的错误。

1 个答案:

答案 0 :(得分:0)

您有两个选项,为AJAX控件提供Format属性或使用DateTime.ParseExact

<ajaxToolkit:Calendar runat="server"
    TargetControlID="Date1"
    CssClass="ClassName"
    Format="yyyy-MM-dd"
    PopupButtonID="Image1" />

http://www.ajaxcontroltoolkit.com/Calendar/Calendar.aspx

使用ParseExact

DateTime date = DateTime.ParseExact("6/16/2015", "M/dd/yyyy", null);