Entity framework ProxyCreationEnabled和LazyLoadingEnabled

Entity framework ProxyCreationEnabled和LazyLoadingEnabled,entity-framework,Entity Framework,在上下文配置中,lazyloadingenabled和proxycreationenabled之间有什么关系 public CorrespondenceContext() : base("DefaultConnection") { this.Configuration.LazyLoadingEnabled = true; this.Configuration.ProxyCreationEnabled = true; } 我注意到P

在上下文配置中,lazyloadingenabled和proxycreationenabled之间有什么关系

public CorrespondenceContext()
        : base("DefaultConnection")
    {
        this.Configuration.LazyLoadingEnabled = true;
        this.Configuration.ProxyCreationEnabled = true;
    }
我注意到ProxyCreationEnabled=false lazyloading失去了它的功能 这意味着当
this.Configuration.LazyLoadingEnabled=true时;this.Configuration.ProxyCreationEnabled=false

使用相关对象时,我必须使用Include


ProxyCreationEnabled覆盖LazyLoadingEnabled吗?

如果
ProxyCreationEnabled==false
,LazyLoading不起作用,你是对的。这是因为延迟加载是通过向模型类中添加额外的代码来支持延迟加载的。这个额外的代码是通过对模型类进行子类化来添加的,生成的子类称为代理。通过禁用代理创建,EF到延迟加载没有挂钩。理论上,你可以自己手动添加它们,两个配置将是独立的。你的评论是完美的答案。你为什么不把它写成回答而不是评论?@Aron谢谢你的回答,但是如果我让ProxyCreationEnabled=true和LazyLoadingEnable=false,它会像it=true一样运行,不需要包含,我的理解是,如果ProxyCreationEnabled=true和lazyload=false,那么它就是earload,我必须使用include,我需要澄清