繁体   English   中英

实体框架根导航属性为null,但已填充后代导航属性

[英]Entity Framework root navigation property null but descendent navigation property populated

根模型上的导航属性始终返回null,而在类似定义的同一模型上的辅助关系可以正确加载。 我正试图找出原因。

首先使用EF6代码,急于加载,我具有如下结构的模型/导航属性:

  • 专案使用者
    • 专案(永远为null)
    • 用户(加载正常)
    • 组(加载正常)
      • 客户群
        • 项目(正确填充-应始终与ProjectUser.Project相同)

我的ProjectUser.Project始终为null,但有趣的是ProjectUser.Groups.Clients.Project的填充正确。 我的项目映射如下:

HasRequired(pu => pu.Project)
    .WithOptional()
    .Map(m => m.MapKey("ProjectId"));

为了进一步使事情变得混乱,我居然能拿到项目,如果在上面的映射更改加载WithOptional()WithMany() 但这对我来说没有意义...所以我的问题是:

为什么在使用WithOptional时未加载WithOptional

WithMany意味着您的实体可能具有许多导航属性,因为它称为一对多。

WithOptional表示您的实体可能具有导航属性之一。 一对一的关系。

看一下这篇文章

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM