Обновления Entity Framework 4.1 для моделей TPT и TPCT? - PullRequest
2 голосов
/ 30 мая 2011

Я в последний раз пробовал Entity Framework, когда он был в версии 4.0. Мои эксперименты с ним, подтвержденные некоторыми публикациями на форумах MSDN и в других местах, показали, что модели TPT (таблица-на-тип) и TPCT (таблица-на-бетон-тип) для сопоставления базы данных с ООП поддерживаются очень плохо, и действительно неполный. Хуже всего то, что SQL, сгенерированный для запросов TPT / TPCT, был полным спагетти и очень неэффективным, поскольку для любой реалистичной иерархии типов он был непригодным для использования.

У меня вопрос, есть ли какие-либо изменения в обновлении EF 4.1? В частности:

  • Есть ли сейчас надлежащая поддержка дизайнеров для подходов TPT и TPCT?

  • Достаточно ли эффективен SQL, сгенерированный для запросов / обновлений TPT / TPCT?

  • Любая другая информация по теме этих моделей.

1 Ответ

3 голосов
/ 30 мая 2011

Ответ - нет.EF 4.1 состоит из двух функций:

  • API DbContext
  • Поддержка первого кода

Первая поддержка кода вообще не использует конструктор - отображение выполненополностью в коде, и это отражает функциональность, предоставленную дизайнером.DbContext API - это новый модный способ работы с EF.Это как-то упрощено, поэтому использование лучше, но в то же время некоторые функции из оригинального API ObjectContext отсутствуют.

Что вас больше всего интересует, так это тот факт, что DbContext API является просто оболочкой для ObjectContext API.Ничего более.В основной функциональности EF нет абсолютно никаких изменений, потому что основная сборка System.Data.Entity.dll не изменилась.Вам все еще нужна эта сборка при работе с EF 4.1 +, вам нужна новая сборка EntityFramework.dll с упомянутыми новыми функциями.Это означает:

  • Дизайнер все тот же.Единственная новая возможность - шаблон DbContext Generator T4
  • Сгенерированный SQL точно такой же
...