【问题标题】:Telerik asp.net for MVC datepicker format in grid related issueTelerik asp.net 用于网格相关问题中的 MVC datepicker 格式
【发布时间】:2012-10-19 09:36:54
【问题描述】:

我为 Telerik datepicker 指定了日期格式为 dd/mm/yyyy。但是,它仅被识别为 mm/dd/yyyy。例如,如果我输入日期为 18/10/2012 保存记录时会抛出错误,因为日期格式无效,因为此处输入的日期为 18 被视为月份。我将日期视图定义为:

@model DateTime?           
@(Html.Telerik().DatePickerFor(m => m)
  .Name(ViewData.TemplateInfo.GetFullHtmlFieldName(string.Empty))      
  .Format("dd/MM/yyyy")
  .HtmlAttributes(new { id = ViewData.TemplateInfo.GetFullHtmlFieldName(string.Empty) + "_wrapper" })
  .InputHtmlAttributes(new {style="width:160px;"}))

在模型验证中,日期字段定义为:

[Required(ErrorMessage = "Date Required")]
[DataType(DataType.Date)]
public DateTime? DATE_CALL { get; set; }

此外,在网格中已将列定义为:

col.Bound(r => r.DATE_CALL).Format("{0:dd/MM/yyyy}").Title("DATE_CALL").Width(170);

所以,无法弄清楚错误是什么?任何帮助将不胜感激。

【问题讨论】:

  • 我相信错误来自 SQL。在记录保存到数据库之前调试日期格式
  • 保存记录时,由于日期不被视为有效格式,因此日期字段为空值,因此引发错误。 DB中日期字段的格式为SQL中的datetime2(0)。

标签: asp.net-mvc-3 datepicker telerik-grid date-format


【解决方案1】:

在保存到数据库之前使用以下设置日期格式:

DateTime.ParseExact(<yourDate>, "MM/dd/yyyy", System.Globalization.CultureInfo.InvariantCulture);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-23
    • 1970-01-01
    相关资源
    最近更新 更多