我正在遵循一个教程Scott Gu http://weblogs.asp.net/scottgu/archive/2010/07/16/code-first-development-with-entity-framework-4.aspx它引用一个名为 DbContext 的类。我在框架 4 的任何命名空间中都找不到它,在我看来,它已从 CT4 DbContext 重命名为 .net4 System.Data.Linq.DataContext。我的假设正确吗?
DbContext
是 EF 团队最近在单独下载中添加的一个新类。它目前不是核心 EF 4.0 的一部分。然而DbContext
前进将是与 EF 交互的首选方式。
那么它与ObjectContext
?从语义上来说它们是完全相同的,但是它们减少了很多额外的噪音ObjectContext
有。就像公开一组需要更多工作一样,例如:
public ObjectSet<Customer> Customers
{
get { return db.CreateObjectSet<Customer>(); }
}
With DbContext
你可以做:
public DbSet<Customer> Customers { get; set; }
基本上就在ObjectContext
,当你做点(.
),一切都在那里,这使得列表相当庞大。 EF 团队真正想要公开的内容DbContext
是仅特定于您的域的实体,框架的其余功能隐藏在不同的属性下。它只是让编程体验变得更容易。
这意味着如果您正在使用ObjectContext
现在,只需一点代码,您就可以轻松移动到DbContext
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)