Entity Framework 4: имеет ли смысл создавать единую диаграмму для всех сущностей?

Я написал несколько предположений относительно Entity Framework, а затем несколько вопросов (так что, пожалуйста, исправьте, где я ошибаюсь). Я пытаюсь использовать POCO с EF 4.

Мои предположения:

  • Для диаграммы EF может существовать только один контекст данных.
  • Контексты данных могут относиться к более чем одному объекту.
  • Если у вас два источники данных, скажем, MS SQL Server и Oracle, EF требует двух разных диаграмм для доступа к данным.
  • Контекст данных EF-диаграммы - это «Единица работы», имеющая единственную функцию Save () для всего на диаграмме. (Конечно, вы могли бы обернуть его в класс UnitOfWork, но он, по сути, выполняет те же обязанности.)

Если это правильно, вот мои вопросы:

  • Если вы не храните все сущности на одной диаграмме EF, как Поддерживаете ли вы целостность данных, например, «Заказы» не могут существовать без «Клиента»? Является ли это исключительно функцией репозитория для загрузки данных только для проверки целостности, или мы «пробуем / ловим» ошибки ссылочной целостности базы данных ?

  • Не могли бы вы создать диаграмму EF для каждой сущности? Например, я бы не стал ' Не ожидайте, что изменения для клиента и изменения в продукте будут написаны вместе, поскольку они не имеют ничего общего друг с другом (если они будут на одной диаграмме, они будут записаны вместе). Или объем диаграммы EF должен охватывать все аналогичные сущности, хранящиеся на одном носителе?

Является ли нормой такое разделение сущностей или просто одна диаграмма, содержащая все сущности? Я бы подумал второе, но эти мысли берут верх.

27
задан Morteza Manavi 5 October 2010 в 22:35
поделиться