小编Mic*_*ong的帖子

MVC 2 DropDownList在List的情况下不选择值

我正在使用ASP.Net MVC 2并且无法正确绑定DropDownList.

我使用强类型的ViewModel和HTML.DropDownListFor语句在我的视图中创建下拉列表.该语句在"正常"场景中工作正常,我只是将DropDown绑定到ViewModel中的一个简单字段.当我的ViewModel包含多个对象的List(数组)时,我在使用这个场景时遇到问题,我想让每个对象中的一个字段绑定到(单独的)DropDown.在这种情况下,DropDown不会获得正确的初始值.

例如,我们有一个人可以拥有多个地址的情况.每个地址包括街道,城市和州.我希望状态显示为DropDown.我的模型是:

public class PersonModel : CommonViewModel
{
    public IList<SelectListItem> AvailableStates { get; set; }

    public string Name { get; set; }

    public IList<AddressModel> Addresses { get; set; }

    public PersonModel()
    {
        AvailableStates = GenerateStates();
    }

    private IList<SelectListItem> GenerateStates()
    {
        List<SelectListItem> items = new List<SelectListItem>();
        items.Add(new SelectListItem() { Text = "WA", Value = "WA" });
        items.Add(new SelectListItem() { Text = "NY", Value = "NY" });
        items.Add(new SelectListItem() { Text = "IH", Value = "IH" });
        items.Add(new SelectListItem() …
Run Code Online (Sandbox Code Playgroud)

c# model-view-controller asp.net-mvc drop-down-menu

3
推荐指数
1
解决办法
1876
查看次数