我们可以在同一个ObjectContext中使用非代理POCO和POCO代理吗?

时间:2010-11-13 18:38:05

标签: c# entity-framework entity-framework-4 poco

我是否可以拥有一个POCO,我不希望为其生成代理(因此我不设置其属性virtual)和另一个我想要生成代理的POCO(properties {{ 1}})在同一个项目中针对相同的EDM由同一virtual管理?

如果我将ObjectContext设置为ObjectContext.ContextOptions.ProxyCreationEnabled并且其中一个POCO仅将其属性设置为true,则实体框架是否仅为一个创建代理并保持另一个不受影响即使我在两者上使用virtual

1 个答案:

答案 0 :(得分:1)

我将在这里说不,除了大多数模拟框架创建动态代理之外的其他任何东西。在运行时,DataContext将创建从POCO继承的代理类。如果没有什么是虚拟的,那么它将不提供数据支持。我怀疑它会以异常通知你,但我不确定。

为什么要让EF管理一个简单的课程?没有什么可以管理的。听起来你正试图将EF用作股票标准工厂类。也许您可以在问题中提供一些背景信息?