Asp.net mvc 4 选择list manipulation可将两个集合合并到一个列表中

Asp.net mvc 4 选择list manipulation可将两个集合合并到一个列表中,asp.net-mvc-4,selectlist,selectlistitem,Asp.net Mvc 4,Selectlist,Selectlistitem,这是我在控制器中设置selectlist的方式,视图代码如下 ViewBag.WList = new SelectList(_bdb.BMW.OrderBy(o => o.NAME).AsEnumerable(), "ID", "NAME"); 我的数据库中有一个表,我不能添加新记录,我需要将其作为我的主选项列表引用,此外,我需要添加2个新记录以引用异常 基本上,在我的创建表单上,我有我的选项列表和类型列表,因为其中一个选项不合适,所以在类型列表的形式中添加了两个新选项作为不同的下拉列表

这是我在控制器中设置selectlist的方式,视图代码如下

ViewBag.WList = new SelectList(_bdb.BMW.OrderBy(o => o.NAME).AsEnumerable(), "ID", "NAME");
我的数据库中有一个表,我不能添加新记录,我需要将其作为我的主选项列表引用,此外,我需要添加2个新记录以引用异常

基本上,在我的创建表单上,我有我的选项列表和类型列表,因为其中一个选项不合适,所以在类型列表的形式中添加了两个新选项作为不同的下拉列表

记录或显示这些基本上都不是问题,但基于上面的代码,我的剑道列表中有一个过滤器

我想知道,如果我可以使用现有代码或需要使用其他方法,那么在病房列表中添加2个选项的最佳方法是什么

另外我也试过

@Html.DropDownList("WOptions", (SelectList)ViewBag.WList, "Select an option", new { style = "width:250px;" })
虽然这仍然显示原始的选择列表,但它不显示新项目,而且这是迄今为止唯一没有导致错误的变体

如果您有任何想法或建议,我们将不胜感激。

Linq扩展名.ToList()将返回列表的一个新实例。因此,
options.ToList()
不引用内部列表,因此后面两项不会插入内部列表。四处走动

SelectList options = new SelectList(_bdb.BMW.OrderBy(o => o.NAME).AsEnumerable(), "ID", "NAME");
        options.ToList().Insert(11, (new SelectListItem { Text = "Example1", Value = "11" }));
        options.ToList().Insert(22, (new SelectListItem { Text = "Example2", Value = "22" }));
ViewBag.WList = options;
我还没有测试代码,但这应该可以做到。 希望这有帮助

var bmws = _bdb.BMW.OrderBy(o => o.NAME).Select(x => new { ID = x.ID, NAME = x.NAME }).ToList();
bmws.Insert(11, (new { ID = "11", NAME = "Example1" }));
bmws.Insert(22, (new { ID = "22", NAME = "Example2" }));
var options = new SelectList(bmws.AsEnumerable(), "ID", "NAME");