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