在Ienumerable模型中有所区别

时间:2013-01-14 22:31:54

标签: asp.net-mvc asp.net-mvc-3 ienumerable

我有一个IEnumerable ViewModel。它具有相同的名称,我只想选择一个名称并在标题中显示它。请建议。

我的代码如下。我试图使用distinct但它不起作用

@foreach (var item in Model.abc)
{
    {
        <table>
          <tr>
            <td style="width:100px" >@Html.Label("Name")</td>
            <td style="width:225px"> @Html.DisplayTextFor(model => item.Name.Distinct())</td>
          </tr>
        </table>
    }
}

更具体一点:我的结果只有{a,a,a,a,a}名称,所以我只想选择单{a}并显示它。

2 个答案:

答案 0 :(得分:1)

  

这个名称相同,我只想选择一个名称并显示   它在标题中。

如果它们全部相同并假设Name实施IEnumerable,您可以尝试First

更新:为您的模型添加新属性

otherProperty = item.Name.First();

然后:

@Html.DisplayTextFor(model => item.otherProperty)

答案 1 :(得分:0)

在您的应用中使用此代码

@foreach (var item in Model.Select(x => x.Title).Distinct())
 {
 <option>@item</option>
}
  

您可以使用@html.display(X=>item)代替@item