我是EF的新手,我有两张桌子,第一张名为ContestEntry,第二张与ContestEntry有一对多的关系。我正在尝试访问比赛条目,然后从那里获取相关的项目信息。这是我正在使用的代码。
ContestEntry cEntry =
Ctx.ContestEntries.Include("Item").Where(ce => ce.ID == 4).First();
问题是当我在调试器中查看它时,Item关系为NULL。
我可能错过了一些不确定的事情。任何帮助,将不胜感激。
谢谢!
答案 0 :(得分:3)
在你的问题中,你提到秒表是“项目”,但在你的LINQ查询中,你包括“项目” - 只是一个错字?
另外,加载引用实体的另一种方法是:
ContestEntry cEntry =
Ctx.ContestEntries.Include("Item").Where(ce => ce.ID == 4).First();
if(!cEntry.Items.IsLoaded)
{
cEntry.Items.Load();
}
如果您有1:n导航属性,您应该能够检查它是否已被加载,如果没有,则在需要时根据需要加载它。
马克