1

Мы собираемся начать проект, который предполагает использование Sql Server 2005 с lakhs записей. В прошлом я использовал NHibernate с хорошими результатами. Но теперь я оцениваю Linq для сущности для доступа к данным. У меня есть эти вопросы по L2E,Linq для сущности с большой базой данных

  1. Насколько хорошо кэшируется L2E по сравнению с NHibernate (в основном, как работает производительность)?
  2. Как легко работать с одним .edmx-файлом (у нас может быть несколько разработчиков, работающих с этими файлами одновременно)? В случае, если мы решили разделить файл, как легко это сделать и каковы недостатки?
  3. Насколько легко издеваться над создаваемыми классами?
  4. Поддерживает ли он MS Access?
+0

Mayge вы должны задать одиночные, целевые вопросы? –

+0

Я знаю, что лакй является 100,000, но я думаю, что другие люди не» t знаю. – tuinstoel

ответ

2
  1. Linq2Entities не делает никакого неявного кэширования. Когда вы запускаете запрос, он преобразует Linq в SQL-запрос, выполняет его и возвращает результат. Это так просто.

  2. Вы не можете разделить свою модель в более чем одном файле EDMX. Ну, вы можете, но вы потеряете отношения между сущностями. Вы можете сделать это, если ваша база данных содержит несколько групп сущностей, которые не являются взаимозависимыми.

  3. Не очень. У нас есть система, которая высмеивала вне ObjectContext перехватывать вызовы на него (мы используем интерфейс, чтобы сделать доступ к сущности, которая отображает в реальный ObjectContext во время выполнения и макета ObjectContext в UnitTest времени.

  4. Он делает, но вы должны создать свои сущности самостоятельно (вы не можете создавать их из БД).

+0

Что касается насмешек, то поезд был разрушен (objectContext.Entity.Something()) кодирования причинял вам боль при написании тестов – Nazgul

+0

Да, у него есть кеширование. Все сущности, запрошенные в контексте, кэшируются в этом контексте. Если вы сохраните свой контекст, у вас будет кеширование. Фокус в том, что вы должны использовать DataContext.GetObjectByKey() для извлечения кэшированного объекта. –

+0

Отсюда мой «неявный». – Inferis

Смежные вопросы