2009-03-04 5 views
2

Hier ist, was ich in der Steuerung haben:Wie bekomme ich ein DropDown, um einen ausgewählten Wert zu haben, wenn ich das Formular in asp.net mvc anzeigen?

IList<LocationInFacility> locs = LocationsInFacility(custCodeID); 
ViewData["LocationsInFacility"] = new SelectList(locs, "ID", "Name", "DL"); 

Hier wird die Ansicht:

<label>Location in Facility</label> 
<%= Html.DropDownList 
     ("LocationsInFacility",(SelectList)ViewData["LocationsInFacility"]) %> 

Hier ist die HTML-Ausgabe, würde ich „DL“ erwartet hätte gewählt werden, aber es ist nicht:

<select id="LocationsInFacility" name="LocationsInFacility"> 
<option value="">-- Select a Location in Facility --</option> 
<option value="DL">DELI</option> 
<option value="BK">BAKERY</option> 
</select> 

Warum ist "DL" nicht ausgewählt? Was mache ich falsch?

Antwort

1

Die Lösung passieren ist die Html.DropDownList zu ändern:

<%= Html.DropDownList("LocationsInFacility") %> 
-2

Ist DL eine Zeichenfolge in den LocationsInFacility-Daten? Unter Umständen müssen Sie den Wert, wenn nicht, anstatt die ToString Äquivalent

+0

„DL“ ist der Wert für Deli. Siehe den obigen HTML-Code. Willst du stattdessen das Wort "Deli" weitergeben? –

+0

siehe http://ayende.com/Blog/archive/2008/11/11/and-yet-another-asp.net-mvc-bug.aspx –

Verwandte Themen