Html.ListBoxFor错误问题asp.mvc 3

pet*_*tro 3 html asp.net listbox razor asp.net-mvc-3

我的代码中有类似的东西,我收到错误:异常详细信息:System.ArgumentException:值不能为null或为空.参数名称:名称.我究竟做错了什么 ?感谢帮助

@model IEnumerable<NHibernateFluentProject.Patient>

@Html.ListBoxFor(model => model, new SelectList(Model,"ID", "FirstName"));

All*_*ang 6

@ Html.ListBoxFor用于强类型视图模型.这可能有助于绑定您的财产.第一部分将为单个项目采用lambda表达式作为列表框的默认选择,第二部分将使项目集合显示所有列表框项目.例如:您有以下两个类.

public class HospitalViewModel
{
    public string SelectedPatient { get; set; }
    public IEnumerable<Patient> AllPatients { get; set; }
}
public class Patient
{
    public int Id { get; set; }
    public string FirstName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

从你看来,你应该做点什么

@model HospitalViewModel

@Html.ListBoxFor(model => model.SelectedPatient, new SelectList(Model.AllPatients,"Id", "FirstName"));
Run Code Online (Sandbox Code Playgroud)

或者,如果您只想将所有患者绑定到列表框,则使用Html.ListBox

@model IEnumerable<Patient>

@Html.ListBox("ListBoxName", new SelectList(Model,"Id", "FirstName"));
Run Code Online (Sandbox Code Playgroud)