在ViewModel中获取DropDownList的选定值(MVC4)

时间:2013-03-26 10:22:36

标签: asp.net-mvc razor asp.net-mvc-4

我有一个具有以下两个属性的视图模型:

    public List<ContributorModel> Contributors { get; set; }
    public Guid ContributorSelected { get; set; }

设置视图时,贡献者包含一个对象列表,我想在DropDownList中显示。回发到服务器时,我希望ContributorSelected是DropDownList的值。

所以在我的表格中,我试过了:

             <div class="formrow">
                 @Html.DropDownListFor(m=>m.Contributors.First().Id,new SelectList(Model.Contributors,"Id","LastName"))
             </div>

但我真的不知道如何格式化我的代码,以便ContributorSelected获取值。此外,在回发时,model.Contributors为空。

任何提示?

1 个答案:

答案 0 :(得分:3)

这是因为您的模型不接受所选的贡献者,您的标记应为:

<div class="formrow">
    @Html.DropDownListFor(m=>m.ContributorSelected, new SelectList(Model.Contributors,"Id","LastName"))
</div>

确保Id是Guid,以便与Model.ContributorSelected匹配