我目前正在学习C#.net而我正在尝试显示一个明确的状态列表,但我无法弄清楚如何执行此操作。
在我的控制器中我有:
public ActionResult StateListDistinct()
{
var distinctStates = (from w in db.Contact_Addresses
select new { State = w.Site_address_state}).Distinct();
return View(distinctStates.ToList());
}
在我看来,我有:
@model List<String>
<table class="table">
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(model => item)
</td>
</tr>
}
</table>
我收到了错误
传入字典的模型项的类型是&#39; System.Collections.Generic.List`1 [&lt;&gt; f__AnonymousType1`1 [System.String]]&#39;,但这个字典需要一个类型&#39; System.Collections.Generic.List`1 [System.String]&#39;的模型项。
显示状态列表需要做什么?
答案 0 :(得分:4)
您的视图需要一个字符串列表,但您提供的字符串是匿名类型列表。
使用方法语法,您可以通过以下方式实现目标:
db.Contact_Addresses.Select(state =>state.Site_address_state).Distinct().ToList();
这也可以解决问题:
var distinctStates = (from w in db.Contact_Addresses
select w.Site_address_state).Distinct().ToList();