EF4 Code First:延迟加载问题

nic*_*ick 4 entity-framework-4

在我正在研究的网站上,我决定给EF4 Code First一个机会.它似乎并不坏,虽然不支持枚举意味着令人印象深刻的点被一个简单的短暂来临否定.

无论如何,我现在的问题是我有一个书籍对象,其中有一组作者.当我点击评论该书的页面时 - 当该书的作者无法添加到viewdata时会抛出错误 - 说该作者的本书集合为空.

所以,我导航到管理页面,去编辑这本书,然后突然作者重新出现.所以我导航回到评论页面,作者现在也出现在这个页面上.

看起来他们没有第一次加载,但由于某种原因,管理部分导致他们加载,所以当我回到审查页面它一切正常.

如果我碰巧重新编译,直接进入评论页面,它们就会再次消失.

我正在使用CreateObject set - via repository从上下文中获取我的书.此方法既可以在管理页面上使用,也可以在审阅页面上使用.

谢谢,如果你能够提供帮助.

Lad*_*nka 8

要允许在POCO类上进行延迟加载,您必须将导航属性标记为虚拟.强制急切加载修改存储库中的查询,并在查询的ObjectSet上使用Include("Authors")之类的东西.