4

嗨,我想在我的视图页面中填写一个下拉列表,我的代码是

public class MemberBasicData
{
    public int Id { get; set; }
    public string Mem_NA { get; set; }
    public string Mem_Occ { get; set; }
}

//控制器

  public ActionResult Register()
    {
        var users = new Member().GetAllMembers();
        ViewBag.Users = users;   
        return View();
    }

//看法

 @model IEnumerable<....Members.Models.MemberBasicData>
 @Html.DropDownListFor(model => model.Mem_Na, (SelectList)ViewBag.Users, "--Select Users--")

我想将 Mem_NA 添加到下拉列表中,Viewbag 包含所有用户详细信息。问题出在查看页面中。model.Mem_Na 中显示错误。请帮我解决这个问题。

4

3 回答 3

8

请更改您的代码

@model IEnumerable<....Members.Models.MemberBasicData>
@Html.DropDownListFor(model => model.Mem_Na, (SelectList)ViewBag.Users, "--Select Users--")

@model ....Members.Models.MemberBasicData
@Html.DropDownListFor(model => model.Id,new SelectList(ViewBag.Users,"Id","Mem_NA"), "--Select Users--")

每次都对我有用

于 2013-08-26T06:40:38.833 回答
1

您的模型是 的IEnumerableMemberBasicData而不是 的实例MemberBasicData。这意味着您不能MemberBasicData直接访问 的属性,因为该属性不存在于IEnumerable.

从我从您的代码中可以看出的一点点,我想您希望您的模型成为一个实例,而不是一个列表。

于 2013-08-26T06:40:54.020 回答
0

拼错?您在视图中拼写 Mem_Na,在模型中拼写 Mem_NA

于 2013-08-26T06:37:52.367 回答