C# 在MVC4中从列表中删除重复项

C# 在MVC4中从列表中删除重复项,c#,asp.net-mvc-4,foreach,duplicate-removal,C#,Asp.net Mvc 4,Foreach,Duplicate Removal,下面是我的代码,用于将数据库中的数据显示为下拉列表。我正在寻找一种删除重复项的方法,以便每个重复项只显示一个实例。有人知道一个简单的方法吗 @model IEnumerable<bookingsMVC.Models.member> <select id="myTown"> @foreach (var item in Model) { <option id="@Html.DisplayFor(model => item.town)" value="@

下面是我的代码,用于将数据库中的数据显示为下拉列表。我正在寻找一种删除重复项的方法,以便每个重复项只显示一个实例。有人知道一个简单的方法吗

@model IEnumerable<bookingsMVC.Models.member>
<select id="myTown">

 @foreach (var item in Model)
 {

  <option id="@Html.DisplayFor(model => item.town)" value="@Html.DisplayFor(model => item.town)"> @Html.DisplayFor(model => item.town)</option>


 }
</select>

您可能希望在控制器中执行此操作,并管理按distinct town进行的实际筛选,这样您就可以简单地将带有distinct town值的列表传递给您的viewmodel

您可能希望在控制器中执行此操作,并管理按distinct town进行的实际筛选,这样您就可以简单地通过distinct town传递列表通常,要保留完整的
对象,可以使用
GroupBy
First()
来检索每个组的第一个:

@foreach (var item in Model.GroupBy(m => m.town).Select(g => g.First()))
...

通常,要保留完整的
对象,可以使用
GroupBy
First()
来检索每个组的第一个:

@foreach (var item in Model.GroupBy(m => m.town).Select(g => g.First()))
...

请显示您的模型定义、操作方法和视图的@model声明。请显示您的模型定义、操作方法和视图的@model声明。谢谢!你知道一种在工作中复制不区分大小写的方法吗
GroupBy(m=>m.town.ToLower())
。这将是一个随机返回的案例,除非您在
.First()
之前执行了
OrderBy
,谢谢您,非常有帮助=]谢谢这个工作!你知道一种在工作中复制不区分大小写的方法吗
GroupBy(m=>m.town.ToLower())
。这将是一个随机返回的案例,除非您在
.First()之前执行
OrderBy
,谢谢,非常有帮助=]