Я только что столкнулся со странным поведением с проверкой mvc и привязкой к int
.У меня есть моя модель как:
class YourModel
{
...
[Range(0, int.MaxValue, ErrorMessage = "Invalid")]
public int Area { get; set; }
...
}
просмотр:
<div class="form-group">
<label class="control-label">Area (m<sup>2</sup>)</label>
<input asp-for="Area" class="form-control" />
<span asp-validation-for="Area"></span>
</div>
с учетом вышеизложенного, вход с радостью принимает ввод, скажем, 37.90
, но беззвучно ставит 0
(int
по умолчанию) при отправке формы.Бедный пользователь задается вопросом, почему он не экономит, и после пары испытаний она начинает злиться на разработчика (в данном случае на меня).
Какая логика стоит за проверкой int
?