Я получаю странное поведение с моей проверкой на мой взгляд.
У моей модели есть это свойство.
[Display(Name = "Overflow Capacity")]
[RegularExpression(@"[-+]?[0-9]*\.?[0-9]?[0-9]", ErrorMessage = "Number required.")]
[Range(0,9999.99,ErrorMessage = "Value must be between 0 - 9,999.99")]
public decimal OverFlowCapacity { get; set; }
У моего представления есть это:
<tr>
<td>@Html.LabelFor(m=> m.OverFlowCapacity)</td>
<td>@Html.EditorFor(m=>m.OverFlowCapacity)</td>
<td> @Html.ValidationMessageFor(model => model.OverFlowCapacity)</td>
</tr>
Если я введу значение, например 'ABC', я получу сообщение проверки«Требуется число» Если я введу значение 999999, я получу сообщение проверки «Значение должно быть в диапазоне от 0 до 9 999,99»
Оба эти сообщения будут получены, когда я положу текстовое поле, как положено.Когда я оставляю значение текстового поля пустым и убираю табуляцию, я не получаю ошибок, как ожидалось.
Однако, когда я отправляю сообщение, я получаю сообщение с подтверждением «Поле переполнения обязательно».
Я не знаю, откуда это происходит.Я попытался удалить все атрибуты проверки из модели, и все еще получаю сообщение «Требуется».Я в растерянности.
Вот сценарии, на которые я ссылался.
У меня есть другие проблемы с mvcfoolproof , которые я могу опубликовать позже.Мне интересно, если это не как-то отвечает за мои проблемы.