Я использую Html.DropDownListFor
, чтобы позволить пользователю выбрать несколько значений? Тем не менее, объект коллекции SelectList
, который я использую, кажется, не создан. Как убедиться, что объект SelectList
создан в VB.Net
?
<div class="col-xs-6 col-md-8">
@Html.DropDownListFor(Function(model) model.CountyLookups, New SelectList(Model.MyActivitySearchCriteria.Counties, "Id", "Name"), "--Select--", New With {.Class = "form-control ", .Multiple = "multiple", .data_bind = "value: CountyLookupId"})
</div>
Контроллер
Function DisplayActivity(cpEventId As Guid,cpActivityId As Guid) As ActionResult
Dim cpActivityViewModel As CpActivityViewModel = SetupCpActivityViewModel(cpEventId, cpActivityId)
Return View("ActivityView", cpActivityViewModel)
End Function
ViewModel
Public Class CpMyActivityViewModel
Inherits BaseViewModel
Property HasApproverAccess As Boolean?
Property MyActivitySearchResults As List(Of CpMyActivitySearchResult)
Property MyActivitySearchCriteria As CpMyActivitySearchCriteria
Property SiteSearchResults As List(Of CpSiteSearchResult)
Property StatusLookups As List(Of Lookup)
<Display(Name:="County")>
Property CountyLookups As List(Of Lookup)
Вложено Class
в модель представления, которая содержит List(Of SelectList)
Public Class CpMyActivitySearchCriteria
Property SelectedCountyId As Integer
Property Counties As List(Of SelectListItem)
Sub New()
Counties = New List(Of SelectListItem)()
End Sub
End Class
. Существует выпадающий список, который создается просто отлично. Собираетесь добавить его на всякий случай, если это поможет прояснить ситуацию?
<div class="row voffset2">
<div class="col-xs-4 control-label">
@Html.LabelFor(Function(model)
model.MyActivitySearchCriteria.StatusLookupId)
</div>
<div class="col-xs-6 col-md-8">
@Html.DropDownList("StatusLookupId", New SelectList(Model.StatusLookups, "Id", "Name"), "-- Select --", New With {.class = "form-control ", .data_bind = "value: StatusLookupId"})
@Html.ValidationMessageFor(Function(model) model.MyActivitySearchCriteria.StatusLookupId)
</div>
</div>
Вывод, который я получу, должен быть полностью заполненным Dropboxlist
, который принимает несколько вариантов выбора. На самом деле приведенный ниже код возвращает мне Dropbox
, но выборки не передаются обратно в Controller
.
@Html.DropDownListFor(Function(model) model.CountyLookups, New SelectList(Model.CountyLookups, "Id", "Name"), "--Select--", New With {.Class = "form-control ", .Multiple = "multiple", .data_bind = "value: CountyLookupId"})
Ошибка, которую я получаю при первой загрузке, проходящей через Controller
Сообщение об исключении:
Ссылка на объект не установлена для экземпляра объекта.