Является ли DbContext таким же, как DataContext?



Я следую учебник от Скотт ГУ это относится к классу с именем DbContext. Я не могу найти его в любом пространстве имен на framework 4, и мне кажется, что он был переименован из CT4 DbContext в систему .net4.Данные.В LINQ.свойство DataContext. Правильно ли мое предположение?

644   2  

2 ответов:

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, когда вы делаете точку (.), все просто там, что делает список довольно огромным. То, что команда EF на самом деле хотела выставить на DbContext являются сущностями, которые специфичны только для вашего домена, а остальная часть способности фреймворка спрятана под разными свойствами. Это просто делает опыт программирования проще.

это означает, если вы используете ObjectContext сейчас, с немного кода, Вы можете легко перейти к DbContext.

это немного поздно, но для гуглеров. DbContext используется EF (EntityFramework) и DataContext используется L2S (LINQ в SQL).

Comments

    Ничего не найдено.