尝试迭代视图中的列表时出现错误消息

本文关键字:错误 消息 列表 迭代 视图 | 更新日期: 2023-09-27 18:27:19

在我的模型中,我有以下字符串列表:

public static List<string> listOfNames = new List<string>();

在控制器中,我有这样的操作:

public ActionResult NameInput()
    {
        NameModel.prepareList();
        return View("NameInput", NameModel.listOfNames);
    }

在视图的顶部,我有这样的:

@model IEnumerable<Exercise_3.Models.NameModel>

我想这就是错误的地方,但我不知道该用什么。这一行从一开始就可以,当时我有一个对象列表,但现在我只想使用一个字符串列表。

运行应用程序时收到的错误消息如下:

传递到字典中的模型项的类型为"System.Collections.Generic.List`1[System.String]",但此字典需要类型为"System.Collections.Generic.IEnumerable`1[Exercise_3.Models.NameModel]"的模型项。

尝试迭代视图中的列表时出现错误消息

发送到视图的模型是NameModellistOfNames属性值。listOfNames属性的类型为List<string>。但在剃刀视图中,您将模型类型指定为IEnumerable<Exercise_3.Models.NameModel>。这些不匹配。

您可以更新您的剃须刀视图以使用List<string>作为型号类型

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