2012-10-19 69 views
0

我指定日期格式爲dd/mm/yyyy爲telerik datepicker。但是,它僅被識別爲mm/dd/yyyy。例如,如果我輸入日期爲18/10/2012保存記錄時出現錯誤,因爲日期格式無效,因爲此處輸入日期,因爲18被視爲月份。我爲日期定義視圖:Telerik asp.net for MVC datepicker格式在網格相關問題

@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); 

所以,無法弄清楚錯誤是什麼?任何幫助將不勝感激。

+0

我認爲錯誤是從SQL到來。在將記錄保存到數據庫之前調試日期格式 – Boomer

+0

保存記錄時,由於日期不被視爲有效格式,因此它會爲日期字段獲取空值並因此引發錯誤。數據庫中日期字段的格式是SQL中的datetime2(0)。 – Krish

回答

0

使用以下保存到數據庫之前,設置您的日期格式:

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