Mein Ansichtsmodell definiert die Eigenschaft, die als Kombinationsfeld angezeigt werden soll. Objektdefinition ist:Validieren der erforderlichen Auswahl in DropDownList
[Required]
public int Processor { get; set; }
ich DropDownListFor
bin mit Kombinationsfeld zu machen:
<%=Html.DropDownListFor(r => r.Processor, Model.Processors, Model.Processor)%>
Model.Processors
enthält IEnumerable<SelectListItem>
mit einem Sondereffekt wie folgt definiert:
var noSelection = new SelectListItem
{
Text = String.Empty,
Value = "0"
};
Jetzt muss ich hinzufügen Validierung zu meinem Kombinationsfeld, so dass der Benutzer einen anderen Wert als 'noSelection' auswählen muss. Ich habe auf eine Konfiguration von RequiredAttribute
gehofft, aber es hat keine Standardeinstellung.
Wenn der Benutzer nicht soll die „NOSELECTION“ wählen, warum Sie es in die Liste der Optionen hinzugefügt haben? – Clicktricity
Um ihn zu zwingen, eine Auswahl zu treffen. –
Wenn Sie nur ein Leerzeichen als erste Option verwenden möchten, verwenden Sie die Überladung von Html.DropDownListFor, die eine Zeichenfolge als Eingabeaufforderungswert verwendet: Html.DropDownListFor (r => r.Processor, Model.Processors, Model.Processor, String.Empty) dann sollte die erforderliche Validierung funktionieren – Clicktricity