繁体   English   中英

无法解析符号电影

[英]Cannot resolve symbol movies

我有一个名为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行中,我遇到了错误:

电影不包含电影的定义,也找不到找不到接受电影类型第一个参数的扩展方法电影(您是否缺少using指令或程序集引用?)

您必须将您的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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM