【发布时间】:2015-08-03 17:28:24
【问题描述】:
请记住,我对 ASP.NET MVC 还是很陌生。所以使用 EF 代码优先的方法,我创建了 2 个模型,Movie 和 Producer:
public class Movie {
public int ID {get;set;}
public string Name {get;set;}
public string Genre {get;set;}
public Producer Producer {get;set;}
}
public class Producer {
public int ID {get;set;}
public string Name {get;set;}
public DateTime DOB {get;set;}
public List<Movie> Movies {get;set;}
}
在控制器类“电影”中,我调用了一个视图:
public class MoviesController : Controller
{
//context just has DbSet< .. > of both classes.
MoviesContext db = new MoviesContext();
public ActionResult Index()
{
var movies = from m in db.Movies
select m;
return View(movies.ToList());
}
}
但是如果我在视图中调用生产者
@foreach(var item in Model)
{
<p>@item.Producer.Name</p>
}
MVC 崩溃并显示“对象引用未设置为对象的实例”。错误,即使当我查看数据库时,Producer_ID 字段(代码首先创建的)已填写,并且具有相应 ID 的所有生产者也存在于数据库中。
我确实手动将值放入数据库中,这是什么原因造成的?
任何形式的帮助都非常感激! :)
【问题讨论】:
标签: c# asp.net asp.net-mvc database entity-framework