我正在尝试解析来自我的ViewData的数据,但它不太顺利。
控制器:
public ActionResult ListFilm()
{
MediaCatalog mediaCL = new MediaCatalog();
// Retrieve a list of film media's
List<CatalogDb.FilmMedia> listFilmMedia = new List<CatalogDb.FilmMedia>();
listFilmMedia = mediaCL.GetAllFilmMediaTitles();
ViewData["FilmList"] = listFilmMedia.ToList();
return View();
}
查看:
<% foreach(var item in (ViewData["FilmList"] as List<CatalogDb.FilmMedia>)) { %>
<%=item.title %>
<% } %>
我注意到我的视图文件中编写的代码是直接在源代码中解析的,所以由于某种原因它没有作为代码执行?
答案 0 :(得分:2)
由于您使用的是razor视图引擎,因此您的语法不正确,并且您的代码未被解析。 在razor view engine中,您必须编写类似
的内容@foreach (var item in (ViewData["FilmList"] as List<CatalogDb.FilmMedia>))
{
@item.title
}
你在那里写的是web表单视图引擎语法。您可以切换到该视图引擎,也可以使用razor语法编写代码,以便解析和执行代码。
答案 1 :(得分:1)