【发布时间】:2013-09-25 21:21:04
【问题描述】:
我的数据库中有三个表:
- 发布
- 作者
- 标签
我正在使用带有 EF 5 的 ASP.NET MVC 4,我的 Post 模型(自动生成)看起来像这样:
public partial class BlogPost
{
public BlogPost()
{
this.Tags = new HashSet<Tag>();
}
...
public virtual Author Author { get; set; }
public virtual ICollection<Tag> Tags { get; set; }
}
我的上下文和 dbSet 已定义。我正在尝试使用此查询获取数据库中的所有帖子
dbSet.ToList()
我以为 Author 会是 null 并且 Tags 会是空的,因为我没有使用 Include() 来使用急切加载。但是如果我调试,我发现 Author 不是 null 并且 Tags 有两个元素。我不明白为什么。
在标签实体中,我有一个导航属性来获取所有获得该标签的帖子。看起来正在填充所有数据...但是我在测试页面时没有注意到任何性能问题,它加载非常快。
也许这不是一个错误……我只是错过了什么吗?
【问题讨论】:
标签: c# entity-framework asp.net-mvc-4 lazy-loading ef-database-first