MVC下拉列表显示重复选项

时间:2013-10-29 18:13:21

标签: c# asp.net asp.net-mvc

在我的控制器中,我创建了一个下拉列表:

 ViewBag.Year = new SelectList(db.Inventorys, "InventoryId", "Year");

在我的视图中,它是这样写的:

 @Html.DropDownList("Year", null, "All Years", new { onchange = "this.form.submit()" })

我在同一年有很多库存,所以列表中有例如2010年列出的5次。

如何使用上述示例仅选择唯一年份?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果您还没有,请确保包含Linq ...

using System.Linq;

你必须做一些分组。

var myInventory = from firstList in db.Inventorys
                  group firstList by firstList.Year into newList
                  let m = newList.FirstOrDefault()
                  select m;

然后使用此...

ViewBag.Year = new SelectList(myInventory.ToList(), "InventoryId", "Year");