使用MVC在Html.DropDownListFor()中选择一个Item

时间:2011-11-14 16:08:01

标签: asp.net-mvc entity-framework ef-code-first

我有一个表(集合)的种类和编辑视图(在MVC中)在DropDown中需要这种种类,我也需要DropDown选择旧种类作为默认值,但是有一些问题。

这是我的选择列表:

var Kinds = db.Kinds
                   .Where(n => n.Member.Id == owner.Id)
                   .Select(k =>k.Title);

var selectList = new SelectList(Kinds);

默认种类(价值)也是:

var Selection= db.Kinds
                 .Single(k => k.Numbers
                 .Any(no => no.Id == Model.Id)).Title;

这是我的DropDown:

 @Html.DropDownListFor(model => model.NumberKind.Title, selectList)

当我定义DropDown时跟随在第一个下拉项目中添加的新成员:

@Html.DropDownListFor(model => model.NumberKind.Title, selectList, Selection)

如果项目为[Mobile, Home, Work],则为ex 选择是[Home] 使用上面的代码,项目将如下所示:[Home, Mobile, Home, Work] 但我不需要新项目,我只想从主要项目中选择主页 我怎样才能做到这一点?

谢谢

1 个答案:

答案 0 :(得分:1)

您目前正在为下拉列表提供“默认”值。您正在使用的构造函数的dropdownlist的目的是将“Select Phone”之类的项添加到下拉列表中。

简单地使用:

@Html.DropDownListFor(model => model.NumberKind.Title, selectList)

此处类似问题可供参考:DropDownList setting selected item in asp.net MVC