Quantcast
Channel: Fluent Validation for .NET
Viewing all articles
Browse latest Browse all 1917

Created Unassigned: FluentValidation Rule for MVC DropDownListFor? [7185]

$
0
0
I am trying to validate dropdown list using FluentValidation. I think I am doing wrong, but not able to find to solution. I need your help.

__Model__
```
[FluentValidation.Attributes.Validator(typeof (MeetingAbstractValidator))]
public class MeetingAbstract
{
public string CompanyAllowedBoolLabel { get; set; }
public string CompanyAllowedBoolOptions { get; set; }
public string CompanyAllowedBoolText { get; set; }
...
}



class MeetingAbstractValidator : AbstractValidator<MeetingAbstract>
{
public MeetingAbstractValidator()
{
RuleFor(x => x.CompanyAllowedBoolText).NotEqual("Select Option...").
WithMessage(i18n_Models_Abstract.RequiredField); ;

}
}
```
__view__

```
<div class="row" style="padding-bottom: 10px">
<div class="col-md-10">
<div class="col-md-6">@Html.Label(Model.CompanyAllowedBoolLabel,
new { @class = "control-label mandatory" })</div>
<div class="col-md-4">
@{

var options = Model.CompanyAllowedBoolOptions;
var optionsList = options.Split(',').ToList();
var optionSelect = optionsList.Select(option =>
new SelectListItem() { Text = option, Value = option }).ToList();
optionSelect.Insert(0,new SelectListItem() {
Text = "Select Option...", Value = "0" });
}
@Html.DropDownListFor(model => model.CompanyAllowedBoolText,
optionSelect,
new { @class = "input-validation-error form-control" })
@Html.ValidationMessageFor(model => model.CompanyAllowedBoolText)
</div>
</div>
</div>
```
__Generated HTML__

```
<div class="col-md-4">
<select class="form-control valid" id="CompanyAllowedBoolText"
Name="CompanyAllowedBoolText">
<option value="0">Select Option...</option>
<option value="да/yes">да/yes</option>
<option value="нет/no">нет/no</option>
</select>
<span class="field-validation-valid" data-valmsg-for="CompanyAllowedBoolText"
data-valmsg-replace="true"></span>
</div>
```

Its working for text boxes. not dropdowns.

Viewing all articles
Browse latest Browse all 1917

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>