Linq 从SelectListItem中选择不同的值
我有一个Linq 从SelectListItem中选择不同的值,linq,asp.net-mvc-4,Linq,Asp.net Mvc 4,我有一个列表,我从一个包含视频的列表中构建,这样我可以在视图中创建一个下拉列表,但我只想选择唯一的值,我已尝试选择distinct: List<SelectListItem> items = new List<SelectListItem>(); foreach (var video in VidModel) { items.Add(new SelectListItem() { Text = video.Name,
列表
,我从一个包含视频的列表中构建,这样我可以在视图中创建一个下拉列表,但我只想选择唯一的值,我已尝试选择distinct:
List<SelectListItem> items = new List<SelectListItem>();
foreach (var video in VidModel)
{
items.Add(new SelectListItem() { Text = video.Name, Value = video.showName, Selected = false });
}
ViewBag.showName = items.Distinct();
List items=newlist();
foreach(视频模型中的var视频)
{
添加(新建SelectListItem(){Text=video.Name,Value=video.showName,Selected=false});
}
ViewBag.showName=items.Distinct();
但这将返回所有值您可以对项目进行
分组
var uniqueItems= items.GroupBy(s=>s.Value,i=> i, (k ,item) => new SelectListItem
{
Text = item.First().Text,
Value=k,
Selected = item.First().Selected
}).ToList();
我不知道你想做什么。但是我认为,与其在SelectListItem
集合上这样做,不如在用于构建SelectListItem
集合(VidModel
?)的数据上这样做。有什么帮助吗?我认为这是用于Linq查询的,我正在尝试使用SelectListItem