2011-03-31 4 views
3

Я разрабатываю приложение ASP.NET (WebForms) и использую EntityFramework. Мне было интересно, какова наилучшая практика использования сущностей. Создать несколько объектов для всей базы данных или создать множество объектов для специализированных целей?!Лучшая практика Entity Framework

Пример: У меня есть таблица клиентов. В этой таблице есть таблицы ForeignKey для customers_addresses и customers_phones. Я получил два случая этого набора данных

  1. автозаполнения имя клиента
  2. Показать подробности пользователя

Для случая 1 я получил один объект, который есть только столбец «имя» сопоставлен пользователю БД Для case 2 У меня есть другой объект, который имеет все данные и соединения между другими таблицами.

Теперь мне было интересно, будет ли только один объект (номер 2) хорош для обоих случаев.

Какова наилучшая практика с EF?

ответ

7

Я не вижу причины, в вашем случае, иметь специализированный объект для сценария автозаполнения. Так как вы будете использовать Linq к Entities для всех ваших запросов, просто убедитесь, что вы выбираете только имя клиента от объекта, а сам всех сущностей

from Customer cust in ent.Customers 
select new { 
    CustomerName = cust.CustomerName 
}; 

Таким образом, вы по-прежнему имеете легкий запрос SQL на бэкэнд, но вы не загрязняете свои модели ненужными «специализированными» объектами.

Кроме того, если вы используете ленивую загрузку, вам не нужно беспокоиться о загрузке EF любой связанной информации о сущностях, если вы на самом деле ее не нуждаетесь.

+0

Dzieki Marek;) – jackal

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