Проблема в том, что вы используете ApplyPropertyChanges
с объектом модели, который был заполнен только данными в форме (заголовок, история и изображение). ApplyPropertyChanges
применяет изменения ко всем свойствам объекта, включая неинициализированный DateTime
, для которого установлено значение 0001-01-01, что находится за пределами диапазона DATETIME
.
для SQL Server.
Вместо того, чтобы использовать ApplyPropertyChanges
, я бы предложил получить изменяемый объект, изменить конкретные поля, которые редактирует ваша форма, а затем сохранить объект с этими изменениями; Таким образом, изменяются только измененные поля. Кроме того, вы можете размещать скрытые входные данные на своей странице с другими заполненными полями, но это не очень подходит для одновременного редактирования.
Обновление:
Вот непроверенный пример простого обновления некоторых полей вашего объекта (предполагается, что вы используете LINQ to SQL):
var story = _db.ArticleSet.First(a => a.storyId == ArticleToEdit.storyId);
story.headline = ArticleToEdit.headline;
story.story = ArticleToEdit.story;
story.image = ArticleToEdit.image;
story.modifiedDate = DateTime.Now;
_db.SubmitChanges();