Html.DisplayForModel抛出InvalidOperationException

时间:2014-09-02 11:50:27

标签: c# asp.net-mvc razor

我的观点是

@model List<string>
...
@Html.DisplayForModel("Name")
...

我的名字&#34;显示模板是

@model string
<span>@Model</span>

这不起作用,我得到了:

传递到字典中的模型项的类型为'System.Collections.Generic.List 1 [string]&#39;,但此字典需要类型为&#39; string&#39;`

的模型项

我在这里做错了什么?

1 个答案:

答案 0 :(得分:2)

您的第一个列表的模型是List<string>类型,您将此模型传递给显示模板。但是显示模板需要类型为string的模型。您的显示模板还应该有一个字符串列表:

@model List<string>
@foreach(var item in Model)
{
   <span>@item</span>
}