我按照Scott Gu的教程来引用一个名为DbContext的类。我无法在框架4的任何名称空间中找到它,并且它在我看来已从CT4 DbContext重命名为.net4 System.Data.Linq.DataContext。我的假设是否正确?DbContext与DataContext相同吗?
回答
DbContext
是由EF团队最近单独下载的新类。它目前不是核心EF 4.0的一部分。但前进的DbContext
将是与EF交互的首选方式。
那么它与ObjectContext
有何不同?在语义上它们是完全相同的,但它们减少了很多额外的噪音,ObjectContext
有。就像暴露需要更多的工作组,例如:
public ObjectSet<Customer> Customers
{
get { return db.CreateObjectSet<Customer>(); }
}
随着DbContext
你可以这样做:
public DbSet<Customer> Customers { get; set; }
基本上在ObjectContext
,当你点(.
),一切都恰到好处有哪些使列表非常庞大。英孚团队实际上想要在DbContext
上公开的实体是仅针对您的域的实体,而框架的其余部分则放在不同的属性中。它只是使编程体验更加简单。
这意味着,如果您现在使用ObjectContext
,只需一点点代码,您可以轻松移动到DbContext
。
任何想法什么时候它将被合并到主框架分支? – 2010-08-13 19:24:29
EF 4.1已于2011年4月11日发布。有关详细信息,请参阅http://blogs.msdn.com/b/adonet/archive/2011/04/11/ef-4-1-released.aspx。 – villecoder 2011-05-31 16:55:26
这难道不适合你整个项目的EF吗,说你有一个商业层? – Coops 2013-04-11 12:57:11
这有点太晚了,但对于谷歌。 DbContext
用于EF
(EntityFramework)和DataContext
用于L2S
(LINQ To SQL)。
- 1. 是否有与DataContext CreateDatabase和DeleteDatabase等价的任何DbContext?
- 2. LWP与libwww-perl相同吗?
- 3. viewInstance.undelegateEvents()与$(this.el).unbind()相同吗?
- 4. '<?='与'echo'相同吗?
- 5. 是480x800与800x480相同吗?
- 6. Comparator.compareBoolean()与Comparator.compare()相同吗?
- 7. dp与dip相同吗?
- 8. CTRL + M与Enter相同吗?
- 9. $ PROGRAM_NAME与$ ruby相同吗?
- 10. Lua(Luvit)与Mongrel2相同吗?
- 11. SOAPpy与SOAPy相同吗?
- 12. P与P-Complete相同吗?
- 13. com.sun.org.apache与org.apache包相同吗?
- 14. random.random()与random.uniform()相同吗?
- 15. URI与相对URL相同吗?
- 16. Unity:在application_BeginRequest中使用相同的datacontext?
- 17. EntityFramework.dll的DbContext与Microsoft.data.Entity.CTP的DbContext
- 18. 实体框架 - 使用相同的DbContext与不同的连接字符串
- 19. ExecuteStoreQuery与Dbcontext
- 20. SQL未知与NULL相同吗?
- 21. ReaderWriterLockSlim.EnterUpgradeableReadLock()与Monitor.Enter()基本相同吗?
- 22. SeDebugPrivilege()api的功能与System.Diagnostics.Process.EnterDebugMode相同吗?
- 23. Ruby的“绑定”与Scope Chain相同吗?
- 24. $('selector',element)与element.find('selector')相同吗?
- 25. ASP Session变量:与IsEmpty相同吗?
- 26. DelegateCommand与“附加行为”相同吗?
- 27. Android Webview与Chrome浏览器相同吗?
- 28. ||运算符与=运算符相同吗?
- 29. php urlencode与java urlencode相同吗?
- 30. EventAggregator.PublishOnUIThread(aMessage)与EventAggregator.Publish(aMessage,Execute.OnUIThread)相同吗?
你下载了CTP吗?我相信它使用像System.Data.Entities.CTP或somesuch命名空间... – AllenG 2010-08-12 19:58:24
我没有。但我确实了解了ObjectContext。由于这是一个生产系统,我不能使用CTP。 – 2010-08-13 19:25:39
NB我知道它很明显,但'System.Data.Linq.DataContext'是从LINQ到Sql和'DbContext'是从实体框架 – 2012-10-10 11:55:48