Entity framework 4 实体框架中的延迟加载问题

Entity framework 4 实体框架中的延迟加载问题,entity-framework-4,lazy-loading,Entity Framework 4,Lazy Loading,我在一个上下文中有两个实体,我已经为它们启用了延迟加载。我用的是POCOs。加载第一个实体时,相关实体不会显示,直到加载第二个实体并导航其实体。更具体地说,我将货币(标记为虚拟)作为一个相关实体存在于CashAccount(从Account继承)和SuspendeAccount(也从Account继承)上。当我加载SuspendeAccount时,货币为空。但若我加载CashAccount并使用它的Currency属性,那个么SuspendeAccount的货币就会被适当地加载。有人知道这是为什

我在一个上下文中有两个实体,我已经为它们启用了延迟加载。我用的是POCOs。加载第一个实体时,相关实体不会显示,直到加载第二个实体并导航其实体。更具体地说,我将货币(标记为虚拟)作为一个相关实体存在于CashAccount(从Account继承)和SuspendeAccount(也从Account继承)上。当我加载SuspendeAccount时,货币为空。但若我加载CashAccount并使用它的Currency属性,那个么SuspendeAccount的货币就会被适当地加载。有人知道这是为什么以及如何解决吗?

我发现了问题所在!SuspendeAccount类没有公共构造函数(它唯一的构造函数标记为internal)。显然,这阻止了POCO LazyLoading逻辑的启动,并且在访问另一个实体的关系后,关系得到了修复,因为两者的相关实体是相同的。

我发现了问题所在!SuspendeAccount类没有公共构造函数(它唯一的构造函数标记为internal)。显然,这阻止了POCO LazyLoading逻辑的启动,并且在访问另一个实体的关系后,关系得到了修复,因为两者的相关实体都是相同的。

您可以用代码以及如何加载实体的代码写下此模型的简要草图吗?呸!我发现了问题所在!SuspendeAccount类没有公共构造函数(它唯一的构造函数标记为internal)。显然,这阻止了POCO LazyLoading逻辑启动,并且在访问另一个实体的关系后,关系被修复,因为两者的相关实体是相同的@斯劳玛-谢谢。现在已经分类了,真有趣!请你把这个写下来作为答案,这样人们就可以看到问题已经解决了。(你可以接受你自己的答案。)不久前,我对私有构造函数也有类似的现象(EF没有创建延迟加载代理),但对受保护的构造函数没有。我没想到内部构造函数会有问题。代理需要一个公共或受保护的无参数构造函数,以便可以创建从实体派生的动态装箱类型。以下是代理要求的完整列表:你能用代码和如何加载实体的代码写下这个模型的简要草图吗?呸!我发现了问题所在!SuspendeAccount类没有公共构造函数(它唯一的构造函数标记为internal)。显然,这阻止了POCO LazyLoading逻辑启动,并且在访问另一个实体的关系后,关系被修复,因为两者的相关实体是相同的@斯劳玛-谢谢。现在已经分类了,真有趣!请你把这个写下来作为答案,这样人们就可以看到问题已经解决了。(你可以接受你自己的答案。)不久前,我对私有构造函数也有类似的现象(EF没有创建延迟加载代理),但对受保护的构造函数没有。我没想到内部构造函数会有问题。代理需要一个公共或受保护的无参数构造函数,以便可以创建从实体派生的动态装箱类型。以下是代理要求的完整列表: