2011-01-14 8 views
0

unterstützt Ich habe eine einfache Html.DropDownList, die von einer SelectList unterstützt wird, die wiederum von meiner enum unterstützt wird.meine SelectList wird von Enum Problem

Enum Colors 
Red=1, 
Green, 
Blue 

Ich füge eine Option Etikett meiner Html.DropDownList, die „Bitte wählen Sie ...“

Das Problem zeigt, ist, wenn ich diese Seite und der Wert hinterlassen wird „Bitte wählen Sie ...“ (int value = 0) und mache ein UpdateModel Ich bekomme einen Fehler, der sagt: "Das ViewModel wurde nicht erfolgreich aktualisiert."

Irgendwo herum?

Danke, Stange.

+0

Eine Enumeration ist standardmäßig 0. Vielleicht könnten Sie Ihren Aufzählungen alle Werte zuweisen. Fügen Sie 'None = 0' hinzu und fügen Sie Ihrer Klasse eine Validierung hinzu. –

Antwort

0

Verboten nur, wenn es ausgewählt ist?

0

Verwenden Sie eine Nullable-Enumeration in der Controller-Methode oder ViewModel. Wenn 0 ausgewählt ist, können Sie:

Model.Color.HasValue 

überprüfen, ob ein Wert festgelegt wurde.