0

我有一个视图,我想在其中显示对一本书的评论。我渲染了我展示这样一本书的视图:

public ActionResult Show(int id)
    {
        var model = _repository.GetSeriesById(id);
        return View(model);
    }

在视图中,我使用模型显示评论。(系列有评论,评论有用户ID)。

@model Models.Series @{

var comments = Model.Comments.ToList(); 

}

然后我可以循环浏览评论以显示消息等。

    @foreach(var comment in comments)
    {

   @comment.Created 
    @comment.Message  

     }

我的问题是当我尝试这样做时:

@comment.User.id

我得到一个空引用错误。我了解您可以使用存储库中的 include 属性来包含如下外键:

var comments = _db.Comments.Include("User").Where(sId => sId.Id == seriesId).ToList();

但是由于我发送的是系列模型,因此无法在我的控制器中执行此操作。那么如何在我的视图中显示发布评论的用户呢?

4

1 回答 1

0

看起来您正在使用实体框架?在运行实际查询时,您应该包括您的外键依赖对象。当您在视图中执行此操作时为时已晚,查询已经返回而未加载外键关系。

于 2012-07-16T13:51:44.430 回答