Каков правильный способ проверить, имеет ли значение Combo значение с помощью правила C# FluentValidation Rulefor() для MVC3?FluentValidation Rulefor (... чтение COMBO)
У меня есть набор Дата рождения 3 Наримера
@Html.DatePickerDropDowns(Html.FieldNameFor(x => x.DateOfBirthDay),
Html.FieldNameFor(x => x.DateOfBirthMonth),
Html.FieldNameFor(x => x.DateOfBirthYear),
DateTime.Now.Year - 110,
DateTime.Now.Year,
Model.DateOfBirthDay,
Model.DateOfBirthMonth,
Model.DateOfBirthYear)
@Html.ValidationMessageFor(model => model.DateOfBirthDay)
@Html.ValidationMessageFor(model => model.DateOfBirthMonth)
@Html.ValidationMessageFor(model => model.DateOfBirthYear)
Каждых из комбинированных дисплеев «ДЕНЬ» или «Месяц» или «Год»
и каждый из них имеет свой соответствующий список.
Поэтому я хотел бы проверить, выбрало ли пользователь одно из значений от 0..31.
RuleFor(x => x.DateOfBirthDay).NotEqual(0).WithMessage("Day is required");
RuleFor(x => x.DateOfBirthMonth).NotEqual(0).WithMessage("Month is required");
RuleFor(x => x.DateOfBirthYear).NotEqual(0).WithMessage("Year is required");
Например выход Combo DateOfBirthDay HTML выглядит следующим образом:
"0" - Day
"1" - 1
"2" - 2
...till 31
Когда я запустить ModelState.IsValid он не выбирает тот факт, что пользователь не трогали какие-либо из значений комбо, оставив индекс «0».
Спасибо в продвижении.
Не совсем, первый элемент жестко закодирован и выглядит как «День». –
Мне нужно посмотреть, что из ваших фактических inValid строк отсюда, почему бы не создать массив []. Если я вижу то, что у вас есть без «...», из того, что у вас есть, это выглядит как строчная кодированная строка. извините – MethodMan
Обновлено ... спасибо в продвинутом –