实体框架加载错误

Posted

技术标签:

【中文标题】实体框架加载错误【英文标题】:Entity Framework Load Error 【发布时间】:2010-10-29 14:13:45 【问题描述】:

我有这个问题

this.FixturePartidoPuntaje.Load();     

var partidos = from q in this.FixturePartidoPuntaje
               where ( q.FixturePartido.Equipo.EquipoId.Equals(equipoId) ||
                      q.FixturePartido.Equipo1.EquipoId.Equals(equipoId)) &&
                      q.puntaje > 0
               select q;

这里最重要的是这是一个 Jugador Entity。

我如何加载FixturePartido 和 ius 孩子?

谢谢

【问题讨论】:

【参考方案1】:

使用.Include() 命令:

var partidos = from q in this.FixturePartidoPuntaje.Include("children")
               where (q.FixturePartido.Equipo.EquipoId.Equals(equipoId) ||
                      q.FixturePartido.Equipo1.EquipoId.Equals(equipoId)) &&
                      q.puntaje > 0
               select q;

这里的“children”是您想要包含的导航属性的名称,如果我没记错的话...

【讨论】:

当我添加包含(编译时间)'System.Data.Objects.DataClasses.RelatedEnd.Include(bool, bool, System.Collections.Generic.HashSet)' 由于其保护级别而无法访问 另一个问题 - 您在 .Include() 语句中使用了单数名称还是 EntitySet 名称?它应该是 .Include("children") 而不是 .Include("child")... 在 EF 4 中有一个 PluralizationService 可以自动完成。

以上是关于实体框架加载错误的主要内容,如果未能解决你的问题,请参考以下文章

延迟加载 - (实体框架)底层连接意外关闭

无法加载 DLL 'sni.dll' - 实体框架核心

代码优先实体框架。急切加载,验证然后保存导致错误

实体框架 - 无法加载指定的元数据资源

使用急切加载时,实体框架是不是将所有相关实体加载到无限深度

实体框架6、加载实体async/await