错误:
InvalidOperationException:传入 ViewDataDictionary 的模型项的类型为“Test.Models.Ticket[]”,但此 ViewDataDictionary 实例需要类型为“Test.Models.Ticket”的模型项。
你好,
在盯着一个错误几天并做了一些研究之后,我确定我对 MVC 的了解不够,无法解决这个问题。我足够了解我的控制器正在尝试将数组传递给视图,但是视图没有在寻找数组(?)。下面是代码:
控制器:
//this is supposed to take the last five "tickets" created from a database
[Route("Ticket")]
public IActionResult Index(int page = 0)
{
var model = _db.Tickets.OrderByDescending(x => x.Time).Take(5).ToArray();
return View(model);
}
Run Code Online (Sandbox Code Playgroud)
查看:(文件名为“Index.cshtml”,位于“Views”文件夹内的“Ticket”文件夹下)
@model IEnumerable<Test.Models.Ticket>
@{
Layout = "_Layout";
}
<p>Below is supposed to display the latest 5 "tickets" from a database.</p>
<div class="ticket-create">
@foreach (var ticket in Model)
{
@Html.Partial("_Ticket", ticket)
}
</div>
Run Code Online (Sandbox Code Playgroud)
部分视图“_Ticket”:
@model Test.Models.Ticket
<article class="ticket-create">
<h1>@Html.ActionLink(Model.Type, …Run Code Online (Sandbox Code Playgroud)