对DropDownListFor感到困惑

时间:2014-02-27 11:31:23

标签: asp.net-mvc asp.net-mvc-5 html.dropdownlistfor

我正在检索一些我希望为其生成下拉列表的int / string对,然后使用这些对过滤项目集合。

目前,我以这种方式在Controller中将这些过滤器创建为SelectLists:

foreach (int key in filterChoices.Keys)
                subFilter.Add(new SelectListItem {Value = key.ToString(), Text = filterChoices[key]});

其中“filterChoices”将id(int)和text(string)保存为键值对。

然后我对该怎么做有点困惑。我试图将各种例子中的点点滴滴放在一起,但并不真正理解发生了什么。

这就是我目前正在尝试的事情:

Html.DropDownListFor(m => m.SelectedDimension, new SelectList(Model.DimensionFilter, "Text", "Value", Model.DimensionFilter.First().Text));

第一部分,我不确定它的用途是什么,但我假设它的属性更改控制了列表中的选择内容?沿着那条路线的东西?所以我试图将这个int设置为一个对应于一个过滤条目的任意值,但无济于事。

没有DropDown出现。

1 个答案:

答案 0 :(得分:1)

只需使用

@Html.DropDownListFor(m => m.SelectedDimension, Model.DimensionFilter)

如果您已经创建了一个selectList

相关问题