无法解析元件影片
本文关键字: | 更新日期: 2023-09-27 17:56:09
我有一个名为Movie
的模型。我将创建一个电影列表并将其传递给视图。下面是控制器代码:
[Route("movies")]
public ActionResult AllMovies()
{
var movies = new List<Movie>
{
new Movie {Name = "Sherek"},
new Movie {Name = "Halk"},
new Movie {Name = "detector Gadget "}
};
return View(movies);
}
这是视图代码:
@using vidly.Models
@model List<Movie>
@{
ViewBag.Title = "AllMovies";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>AllMovies</h2>
<ul>
@foreach (var movie in Model.movies)
{
<li>movie </li>
}
</ul>
问题是它无法识别列表中的movies
。在第 Model.movies
行中,我面临错误:
电影不包含电影的定义,也没有扩展方法电影接受类型为 Movie 的第一个参数的电影 可以找到(您是否缺少使用指令或程序集 参考?
您必须将
foreach
语句更改为此
@foreach (var movie in Model)
{
<li>
movie.Name
</li>
}
尝试将模型从 List<Movie>
更改为 IEnumerable<Movie>
。
将此代码复制到您的视图中,我认为它应该可以工作
@model List<Vidly.Models.Movie>
@{
ViewBag.Title = "All Movies";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>AllMovies</h2>
<ul>
@foreach (var movie in Model)
{
<li>@movie.Name</li>
}
</ul>
感谢@Stephen Muecke。
我有@model List<Movie>
,这在某种程度上意味着Model = List<Movie>
.因此,要实现列表中的每部电影,我必须做
foreach(var movie in Model)