【问题标题】:String to Datetime Conversion in Ajax CalendarExtender.Ajax CalendarExtender 中的字符串到日期时间的转换。
【发布时间】:2015-09-05 07:57:19
【问题描述】:

在日历控件中: 当我选择日期时,它会以这种格式显示在 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。我不使用格式属性。默认情况下,它以以下格式显示在文本框中:6/16/2015 menas "mm/dd/yyyy"

尝试使用相同的代码将文本框字符串转换为日期时间数据类型

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

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

我也试试

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

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

【问题讨论】:

  • 可以设置格式属性Format="yyyy-mm-dd"

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


【解决方案1】:

您有两个选择,为 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);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-28
    • 1970-01-01
    • 2017-04-30
    • 2023-03-07
    • 1970-01-01
    相关资源
    最近更新 更多