У меня есть вид для добавления очень простых объектов:
@Html.ValidationSummary(true)
@using (Html.BeginForm())
{
<div class="editor-label">
@Html.LabelFor(tag => tag.Name)
</div>
<div class="editor-field">
@Html.EditorFor(tag => tag.Name)
@Html.ValidationMessageFor(tag => tag.Name)
</div>
<input type="submit" value="Insert" class="submit_btn" />
}
Я сделал контроллер следующим образом:
if (ModelState.IsValid)
{
...
context.Tags.Add(Tag);
context.SaveChanges();
return RedirectToAction("Index");
}
return View(Tag);
Модель генерируется из схемы базы данных (как часть edmx). Свойство Nullable для имени поля имеет значение false.
В некотором смысле для пустого ввода «name» свойство ModelState.IsValid имеет значение true и пытается сохранить его (в SaveChanges () происходит сбой с ошибкой проверки). Почему?