EF模型:没有从数据库中读取ICollection - 我可能缺少什么?

时间:2016-08-04 01:37:49

标签: asp.net-mvc entity-framework asp.net-core

我正在学习ASP.NET Core的一些初学者教程,并且我已经设法构建了一个包含两个表的应用程序,这些表具有父子关系(.in:n)。

创建数据并保存数据,并且数据库中的数据正确。

当我现在点击详细信息视图时,问题出现了,我在那里做常规的

    ...
    <dt>
      @Html.DisplayNameFor(model => model.Associations)
    </dt>
    <dd>
      <table class="table">
        <tr>
          <th>Association</th>
        </tr>
        @foreach (var item in Model.Associations)
        {
          <tr>
            <td>
              @Html.DisplayFor(modelItem => item.Title)
            </td>
          </tr>
        }
      </table>
    </dd>

(希望看到包含所有关联的表格) - 行@foreach (var item in Model.Associations)崩溃。在调试器中,我可以看到相应的model.ICollection<Association>null

我认为我遗漏了一些内容,因此从数据库中读取对象并不会自动包含带有关联的数组 - 我的模型对象的所有数据都被读取并可用;只是不是ICollection的内容。

整个代码是使用Scaffolding创建的,据说应该马上就可以了。 Lazy Read 是一个潜在的原因,但即使我改变了它,它也没有用。

我认为这是一个血腥的初学者错误 - 我现在有大约20个小时的Web开发经验 - 而且我可能错过了一些必要的文件编辑。

我确实花了20个中的最后8个来寻找这个问题,我从头开始重新创建了整个应用程序两次,但问题始终如一。有什么提示吗?

编辑:不是 Objects in ICollection not passed with model to view的副本 - 我工作过。这是一个较旧的框架版本,解决此问题的语法不再有效,并且据称不再需要。

0 个答案:

没有答案