「Vidly.Models.Movie」に「GetEnumerator」のパブリック定義が含まれていないため、「Vidly.Models.Movie」型の変数に対してforeach文が動作しません」 "@foreach(モデル内のvar映画)」この行の"コントローラのアクションビューにアクセスする際にエラーが発生しました
マイ映画コントローラがこの
public class MoviesController : Controller
{
private ApplicationDbContext _context;
public MoviesController()
{
_context = new ApplicationDbContext();
}
protected override void Dispose(bool disposing)
{
_context.Dispose();
}
// GET: Movies
public ActionResult Index()
{
var movie = _context.Movies.Include(m => m.Genre).ToList();
return View(movie);
}
public ActionResult Details(int id)
{
var movie = _context.Movies.Include(m => m.Genre).SingleOrDefault(m => m.Id == id);
if (movie == null)
return HttpNotFound();
return View(movie);
}
}
}
ですこれは私が持っている私のindexアクションビューの実装
@model Vidly.Models.Movie
@{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>Movies</h2>
<table>
<thead>
<tr>
<th>Movie</th>
<th>Genre</th>
</tr>
</thead>
<tbody>
@foreach (var movie in Model) // getting error on this line
{
<tr>
<td> @Html.ActionLink(@movie.Name, "Details", "Movies", new { id = movie.Id}) </td>
<td>@movie.Genre.Name</td>
</tr>
}
</tbody>
</table>
ですまた、それがあるべきこの1と非常によく似た別のコントローラのための別のアクションビューの実装を実現したがそれはどんなエラーが発生することはありませんでした...ビュー上
この場合、ムービーはムービーのリストではなくモデルタイプですので、ムービーでforeachを実行することはできません。 – MDiesel