1

@Html.DropDownListFor について質問があります

私は2つのクラスを持っています:

Public Class A01WorkRecord
Public Property counter As Int32
Public Property MembetNumber As Int16
Public Property Memo As String
Public Property WorkDate As Date
End Class

Public Class B01Member
Public Property counter As Int32
Public Property Number As Int16
Public Property Name As Date
End Class

ビューは作業記録を作成するためのものなので、ビューでメンバー名を選択して作業メモを書き込めるようにしたい

だからコントローラで

Function Index() As ActionResult
    Dim q = From p In db.B01s
            Select p.Number, p.Name

    Dim ListItem As List(Of SelectListItem) = New List(Of SelectListItem)
    For Each l In q
        ListItem.Add(New SelectListItem With {.Text = l.Name, .Value = l.Number})
    Next
    ViewData("List") = New SelectList(ListItem, "Value", "Text", "")

    Return View()
End Function

そしてビューで

@Html.DropDownListFor(Function(model) model.MembetNumber ,ViewData("Item"))

名前を選びたいのですがうまくいきません...

エラーメッセージ:

タイプが 'IEnumerable' でインデックスが 'Number' の ViewData アイテムではない

何が悪いのかわかりません、助けてください。

4

1 に答える 1

2

提供された例から、あなたが混同している可能性があるようViewData("Item")ですViewData("List")

代わりにこれを試してください

@Html.DropDownListFor(Function(model) model.MembetNumber, ViewData("List"))
于 2013-01-04T06:29:20.453 に答える