2009-03-04 9 views
2

私はコントローラに持っているものである:ここではasp.net mvcでフォームを表示すると、ドロップダウンに選択した値を持たせるにはどうすればよいですか?ここで

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

は図である。ここでは

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

は、HTML出力で、私は「DL」を選択すると予想しているだろうが、そうではありません。

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

「DL」が選択されていないのはなぜですか?私は間違って何をしていますか?

答えて

1

ソリューションはにHtml.DropDownListを変更することで同等のToStringメソッドよりも、そうでない場合に値を渡す必要があります。

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

DLはLocationsInFacilityデータの文字列ですか?あなたはむしろ

+0

「DL」デリの値です。上記のhtmlを参照してください。代わりに "デリ"という言葉を渡すと言っていますか? –

+0

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