dbcontext和POCO模板有什么区别?

时间:2012-11-10 10:47:25

标签: c# entity-framework poco dbcontext

我可以在管理器扩展中看到,存在EF 4.x dbcontext和EF 4.x POCO。它们都生成持久性无知的实体。

他们之间有什么区别?

4.x和5.x有什么区别?哪个是5.x版本的新功能?

是否可以只使用一个交换实体来访问数据库?我想使用一个接口来使用不同的方式来访问数据库。 EF 4,EF 5和其他不必要的它将是EF。我想编程一次并在很多场景中使用它。

1 个答案:

答案 0 :(得分:2)

DbContext是您模型中所有实体的门户。例如,如果您的上下文被称为con,则可以调用con.Orders()来获取Order对象。使用Entity Framework生成的POCO(普通旧CLR对象)不会从实体框架扩展类。具有实体框架的POCO更先进,因此我建议您在开始时不要使用它们。 EF 5的一个新功能是用ObjectContext替换DbContext。好的,不能替换,因为你仍然可以使用DbContext。但Microsoft希望ObjectContext成为访问所有实体而不是DbContext的新的更简单方法。在大多数情况下,ObjectContext更容易使用。