【发布时间】:2014-03-30 18:28:32
【问题描述】:
我需要一些关于这个问题的建议/帮助。我一直在互联网上四处寻找,我有点困惑。
基本上我有一个视图-索引列出了我所有的电影。有一个详细信息视图,显示有关电影的其他信息。我遇到的问题是,当我查看详细信息视图时,它没有显示我的一些值。我理解为什么我有一个强类型模型,但我需要一些帮助来解决这个问题。
型号
public class Film
{
public int FilmID { get; set; }
[StringLength(60, MinimumLength = 1)]
[Required]
public string Title { get; set; }
..............
public Owner owners { get; set; }
}
控制器
public ActionResult Details(int id = 0)
{
Film film = db.Films.Find(id);
if (film == null)
{
return HttpNotFound();
}
return View(film);
}
查看
@model SwapShop.Models.Film
@{
ViewBag.Title = "Details";
}
<h2>Details</h2>
<fieldset>
<legend>Film</legend>
<div class="display-label">
@Html.DisplayNameFor(model => model.Title):
</div>
<div class="display-field">
@Html.DisplayFor(model => model.Title)
</div>
<div class="display-label">
@Html.DisplayNameFor(model => model.owners.Owner_FirstName)
</div>
<div class="display-field">
@Html.DisplayFor(model => model.owners.Owner_FirstName)
</div>
</fieldset>
正在显示正确的记录,但 owner_FirstName 的值为空白。我需要加入控制器中的 Owner 表吗?
【问题讨论】:
-
在这一行下断点:
return View(film)并检查film的值。如果film.owners.Owner_FirstName为空,那么您需要查看db.Films.Find()方法是否正确查询您的数据库中的owners属性。 -
感谢您这么快回来。将值写到屏幕上的最佳方式是什么?
-
我设法检查了电影对象,当我查看电影标题时,它正确地显示在控制台上。当我查看films.owners.Owner_FirstName 时,我得到一个nullrefexception。
标签: c# asp.net-mvc