У меня есть kendo datetimepicker в редакторе всплывающих окон кендо. я описывать поле в модели с форматом:Kendo DateTimePicker меняет формат после отправки
[DisplayFormat(DataFormatString = "{0:dd.MM.yyyy HH:mm:ss}", ApplyFormatInEditMode = true)]
public DateTime Date { get; set; }
И EditorTemplate
@Html.Kendo().DateTimePickerFor(model => model.Date).Value(DateTime.Now).Format("dd.MM.yyyy HH:mm")
У меня также есть DateTimeBinder
public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
var displayFormat = bindingContext.ModelMetadata.DisplayFormatString;
var value = bindingContext.ValueProvider.GetValue(bindingContext.ModelName);
if (!string.IsNullOrEmpty(displayFormat) && value != null && !String.IsNullOrWhiteSpace(value.AttemptedValue))
{
DateTime date;
displayFormat = displayFormat.Replace("{0:", string.Empty).Replace("}", string.Empty);
if (DateTime.TryParseExact(value.AttemptedValue, displayFormat, CultureInfo.InvariantCulture, DateTimeStyles.None, out date))
{
return date;
}
else
{
bindingContext.ModelState.AddModelError(bindingContext.ModelName, string.Format("{0} Incorrect Format", value.AttemptedValue));
}
}
return base.BindModel(controllerContext, bindingContext);
}
проблема, когда я сохраню это всплывающее окно и достигает модели в сторона сервера контроллера - это формат dd.MM.yyyy H: mm: ss not dd.MM.yyyy HH: mm: ss. например, если я сохраню с этого времени 31.03.2015 08:56, после отправки на сервер он станет 31.03.2015 8:56. У вас был такой случай?