假设我有2个表:
表A:,列:A_ID,B_ID
表B:,列:B_ID
根据我在TableA下的模型图,A_ID列和B的NavigationProperty看起来只是对B的引用。(可能因为它是FK?)
现在困扰我的是,一旦我加载了context.TableA.ToList()行 我尝试迭代这个列表中的项目,我没有访问简单列B_ID,但我只有B,一旦做item.B.ID我得到一个空引用。
代码示例:
List<TableA> items = context.TableA.ToList();
foreach(TableA item in items)
{
item.B.ID <- null reference.
}
我知道这可能是LINQ背后的想法,但我认为我的做法是错误的。任何人都可以 请解释我如何正确加载整个表格的列? LINQ的这些原理如何反映在我的例子中?
请提供代码示例:)
答案 0 :(得分:3)
This article可能会为您提供解决方案。
您需要急切加载相关实体。
答案 1 :(得分:0)
正如我们在聊天中讨论的那样,实体框架语法已经改变,并且使用当前的实体框架5保持最新,将确保各个页面上列出的示例保持相关。