2013-05-15 210 views
1

我有一个非常奇怪的问题,我似乎无法找到谷歌的答案。代码首先空导航属性

目前,我有下面的代码首先/ DB结构:

​​

的问题是,当我尝试返回如查询:

var prospects = db.Prospects.Include("CampaignEvents"); 

prospects.First().CampaignEvents是空的 - 当它应该填充记录。

我甚至采用了由实体框架生成的SQL,并使用它成功地在数据库中直接返回前景和活动事件来执行它。

我不知所措 - 它非常古怪,我没有收到任何错误,只是一个空的集合。

请让我知道,如果你需要任何额外的细节!

+0

明显的问题,但你确定你有数据吗? – cadrell0

+0

是的,先生,100%肯定,我采取由EF生成的SQL查询,并在我的查询分析器中运行它,它返回的数据(包括活动事件)没有问题。那是什么奇怪的 – 99823

+0

'null'或空集合?在Damith的回答下,你写了'null',在你的问题中写下“空集”。这是一个很大的区别,因为即使在数据库中没有数据,“包含”集合也不能是null。 – Slauma

回答

0

尝试

var prospects = db.Prospects.Include("CampaignEvents"); 

var value = prospects.FirstOrDefault(p=>p.CampaignEvents.Any()); 
+0

我试过这个,它返回一个null - 它怪异的怪异人..我不能为我的生活找出为什么实体框架不加载这个集合的数据显然是从数据库拉。 – 99823

相关问题