【发布时间】:2016-11-17 15:04:19
【问题描述】:
根据Why do navigation properties have to be public for a proxy to be created?,导航属性可以被保护内部虚拟并且不需要是公共虚拟并且实体框架仍将提供代理。 我编写了这样的导航属性:
protected internal virtual ICollection<MyEntityType> MyNavigationCollection { get; set; }
在映射中我显然有:
.WithMany(t => t.MyNavigationCollection )
这似乎与我引用的文章一致。我遇到的问题是,当我查询拥有对象时,Entity Framework 不再将代理集合的实例分配给 MyNavigationCollection,因为我已将 MyNavigationCollection 的可见性更改为受保护的内部虚拟。
为了让 Entity Framework 将代理对象用于具有可访问性保护的内部虚拟的集合,我错过了什么?
【问题讨论】:
标签: c# entity-framework proxy