У меня есть простая строка, которая имеет 4 столбца:
{ [Primary Key Int]RowID, [text]Title, [text]Text, [datetime]Date }
Я бы хотел, чтобы пользователь мог редактировать эту строку на простой странице, которая имеет форму с полями «Заголовок» и «Текст».
Есть скрытое поле для хранения RowID.
Когда пользователь публикует эту форму в моем действии контроллера, я хочу, чтобы она обновила заголовок и текст строки и сохранила дату. Я не хочу явно включать скрытое поле для даты на странице формы.
Вот мое действие:
[AcceptVerbs(HttpVerb.Post)]
public ActionResult EditRow(Row myRow)
{
RowRepository.SaveRow(myRow)
return View("Success");
}
RowRepository:
public void SaveRow(Row myRow)
{
db.MyRows.Attach(myRow);
db.Refresh(RefreshMode.KeepCurrentValues, myRow);
db.SubmitChanges();
}
Это не сохраняет значение «Дата» уже в строке и пытается вставить значение, которое вызывает исключение временного интервала.
Как я могу просто сказать, чтобы сохранить старые значения?
Я пытался сделать RefreshMode.KeepChanges
и ничего.