Я создал следующее представление для пользователей, чтобы создавать новые элементы.Я попытался создать немного проверки, поэтому, если пользователь оставляет поле пустым, он выдает сообщение проверки.Однако, если пользователь оставляет поле пустым, мое приложение вылетает в следующей строке: _headline = structuralObject.SetValidValue(value, false)
в файле Model.Designer.cs.потому что:
Это свойство не может иметь нулевое значение.
Часть моего файла Model.Designer.cs:
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
[DataMemberAttribute()]
public global::System.String headline
{
get
{
return _headline;
}
set
{
OnheadlineChanging(value);
ReportPropertyChanging("headline");
_headline = StructuralObject.SetValidValue(value, false);
ReportPropertyChanged("headline");
OnheadlineChanged();
}
}
Часть кода, к которой это относится, выглядит следующим образом в моем представлении создания:
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>News Details</legend>
<br />
Posted Date:
<div class="editor-field">
@Html.EditorFor(model => model.posted)
@Html.ValidationMessageFor(model => model.posted)
</div>
<br />
Headline Title:
<div class="editor-field">
@Html.EditorFor(model => model.headline)
@Html.ValidationMessageFor(model => model.headline)
</div>
<br />
Ниже приведен файл AccountModels.cs, в который я ввел проверку для представления:
[MetadataType(typeof(NewsValidation))]
public partial class News
{
}
public class NewsValidation
{
[Required(ErrorMessage = "Posted date is required")]
public DateTime posted { get; set; }
[Required(ErrorMessage = "Headline is required")]
[Display(Name = "Headline")]
public string headline { get; set; }
[Required(ErrorMessage = "Story body is required")]
public string story { get; set; }
}
IМне сказали, что это потому, что моя база данных допускает значения Null, однако с тех пор я создал новую базу данных, которая больше не допускает значения Null.Мое приложение все еще падает, и я не знаю, с чего начать.Вот странная вещь, когда он падает, я нажимаю кнопку воспроизведения, чтобы продолжить, и появляется проверка.Таким образом, похоже, что проверка работает, но по какой-то причине заранее происходит сбой приложения.
Кто-нибудь может предложить какую-либо поддержку?