Ошибка при обновлении строки в сетке Kendo с помощью модели с datetimeoffset - PullRequest
0 голосов
/ 05 августа 2020

У меня есть сетка с моделью, которая содержит два свойства datetimeoffset, просто чтобы показать, когда строка была создана и изменена. Они просто отображаются в сетке и не редактируются. Вот сокращенный пример модели:

public class ConfigurationParameterSelectorViewModel
{
    public int Id { get; set; } 
    public string CurrentValue { get; set; }    
    public DateTimeOffset CreatedDate { get; set; }
    public DateTimeOffset ModifiedDate { get; set; }
}

Имеется больше свойств, но они были удалены для удобства чтения. Таким образом, в этом случае в сетке можно редактировать только свойство CurrentValue, и когда оно редактируется и затем отправляется в метод контроллера, значения DateTimeOffset внезапно становятся нулевыми, что делает ModelState недействительным и выдается следующая ошибка:

Значение '/ Date (1590480680003) /' недопустимо для CreatedDate. Значение '/ Date (1596443007283) /' недействительно для ModifiedDate.

Насколько мне известно, это как-то связано с неправильным анализом DateTimeOffset в json при отправке на контроллер. . Честно говоря, я знаю об этом очень мало, поэтому это немного сложно описать правильно. timezone.

Я не думаю, что нужно показывать код сетки, поскольку это обычная сетка kendo mvc с DataSource, настроенным на использование Ajax, хотя я могу предоставить его по запросу.

...