¿DbContext es lo mismo que DataContext?

Estoy siguiendo un tutorial de Scott Gu que se refiere a una clase llamada DbContext. No puedo encontrarlo en ningún espacio de nombres en el marco 4 y me parece que se renombró de CT4 DbContext a .net4 System.Data.Linq.DataContext. ¿Mi suposición es correcta?

DbContext es una nueva clase que se agregó en la reciente descarga por separado del equipo de EF. Actualmente no forma parte del núcleo EF 4.0. Sin embargo, DbContext avanzar sería la forma preferida de interactuar con EF.

Entonces, ¿cómo es diferente de ObjectContext ? Bueno, semánticamente son exactamente lo mismo, pero redujeron mucho ruido extra que tenía ObjectContext . Como exponer un conjunto requiere más trabajo, por ejemplo:

 public ObjectSet Customers { get { return db.CreateObjectSet(); } } 

Con DbContext puedes hacer:

 public DbSet Customers { get; set; } 

Básicamente en ObjectContext , cuando puntea ( . ), Todo está justo allí, lo que hace que la lista sea bastante grande. Lo que el equipo de EF realmente quería exponer en DbContext son entidades que son solo específicas de su dominio y el rest de la capacidad del framework está metida bajo diferentes propiedades. Simplemente hace que la experiencia de progtwigción sea más fácil.

Esto significa que si está utilizando ObjectContext ahora mismo, con un poco de código, puede pasar fácilmente a DbContext .

Es un poco tarde, pero para los googlers. DbContext se usa para EF ( EntityFramework ) y DataContext se usa para L2S ( LINQ To SQL ).