Asp.net mvc 在asp、net mvc应用程序中显示下拉列表框值时出现问题

Asp.net mvc 在asp、net mvc应用程序中显示下拉列表框值时出现问题,asp.net-mvc,asp.net-mvc-2,Asp.net Mvc,Asp.net Mvc 2,我在分配下拉列表框值时遇到以下错误 数据绑定:“System.Web.Mvc.SelectListItem”不包含名为“code”的属性。 这是我视图中的下拉列表框代码 <span id="StateFilterRow"> State: <%= Html.DropDownList("StatesFilter", new SelectList(Model.StatesList, "code", "code", Model.SelectedState), new { style =

我在分配下拉列表框值时遇到以下错误

数据绑定:“System.Web.Mvc.SelectListItem”不包含名为“code”的属性。

这是我视图中的下拉列表框代码

<span id="StateFilterRow"> State: <%= Html.DropDownList("StatesFilter", new SelectList(Model.StatesList, "code", "code", Model.SelectedState), new { style = "background-color: #eee; font-weight:bold;" })%></span>  
在我的ViewModel中

  public SelectList StatesList { get; set; }
在我的视图代码中,这是我做错了什么吗

有人能帮我吗


谢谢

您的
getListOfStates
方法已经返回了一个
SelectList
,因此在您的视图中,您不需要再创建一个。因此,您可以修改此方法并在其中指定属性:

private SelectList getListOfStates()
{
    var values = 
        from s in generic.CodeTypes
        join c in generic.ApplicationCodes on s.CodeType_Id equals c.CodeType_ID
        where s.CodeType_Id == 26
        select new
        {
            Code = c.Code,
        };
    return new SelectList(values, "Code", "Code");
}
在你看来:

<%= Html.DropDownList(
    "StatesFilter", 
    Model.StatesList, 
    new { style = "background-color: #eee; font-weight:bold;" }
) %>


然后如何调用此SelectedList ViewModel.stateList=getListOfStates();我在这里犯了错误。@kumar,你犯了什么样的错误?请你再具体一点好吗?对象引用未设置为对象错误的安装。thanks@kumar,哪个对象为空?它是否在
getListOfStates
方法中?请发布您的全部操作代码。是的,此getListOfStates显示其表示对象引用错误Darin。我的代码是GetListofStates和ViewModel.StateList=GetListofStates();
<%= Html.DropDownList(
    "StatesFilter", 
    Model.StatesList, 
    new { style = "background-color: #eee; font-weight:bold;" }
) %>