【发布时间】:2012-03-13 21:40:58
【问题描述】:
我是实体框架的新手。我试图从应该返回 1 个结果的 LINQ 查询中获取计数。计数始终为 0。我知道数据在那里,并且 edmx 中的关系是健全的。
代码如下:
LineItem li = order.LineItems.Where(i => i.ID == lineItemId).FirstOrDefault(); 如果 (li != null) { if (li.Notes.Count > 0) { // 获取笔记数据 } }现在 ListItem 不为空,因此我可以进行计数调用。我再次验证了我的数据作为我的调试网 .Where 匹配为“52635 == 52635”
为了得到我的计数,我这里有什么遗漏吗?或者对我如何进一步调试这个问题有什么建议?
我正在使用 Entity Framework 4 +
谢谢!
【问题讨论】:
-
您是否已进入调试器并在调用 Count 时检查了 li.Notes?我怀疑问题存在,而不是 count 属性。
-
显示检索
order的代码,问题可能就在那里(正如@DanielAWhite 的回答所暗示的那样)。 -
如果我能够通过导航属性访问我的笔记,我是否需要一个 .Include?关系存在,当我尝试使用 .Include 时出现错误。
-
除非您指定,否则不会加载注释。确定实体名称:是“Notes”还是“LineItemNotes”
标签: c# linq entity-framework linq-to-entities