MVC 3 アプリケーションで VB.NET を使用しています。年のドロップダウンをレンダリングしようとしています。ここで、特定の年で選択されたオブジェクトを示すデータベースを持っています。次のコードを試しました
Controller:
Dim _years As New List(Of Service.Year)
_years = _Svc.GetYears()
Dim _yearList As IEnumerable(Of SelectListItem) = From c In _years Select New SelectListItem() With {.Text = c.YearMember, .Value = c.YearMember, .Selected = True}
ViewData("Year") = _yearList
In View :
Select Year : <%: Html.DropDownList("Year", TryCast(ViewData("Year"), SelectList))%>
これは、ドロップダウンで選択された最後の値を示しています。.Selected=True を削除すると、データベースの Year テーブルにあるように、Years エントリをドロップダウンにロードするだけです。年のリストが 1992 年から 2013 年までであるとします。そして、1995 年という年を持つ私のオブジェクトは、データをレンダリングしている間、ドロップダウンは 1995 を選択してレンダリングする必要があります。