Подтвердить что ты не робот

Использование нескольких файлов edmx по сравнению с одним большим файлом edmx?

Я новичок в модели Entity, и я ищу совет, как организовать мою модель Entity.

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

Пожалуйста, дайте мне знать, какой из них лучше, и какие плюсы/минусы (если есть) каждой альтернативы.

Спасибо.

4b9b3361

Ответ 1

Я собираюсь пойти против зерна здесь. Сейчас я создал 2 больших приложения с EF, один с одним edmx и один с несколькими. Есть плюсы и минусы, но в целом я нашел жизнь намного проще с одним edmx. Причина в том, что в приложении практически никогда не происходит реального разделения доменов, даже если это происходит с самого начала. Появляются новые требования, предлагающие связать объекты в разных edmx, тогда вам нужно реорганизовать и постоянно перемещать вещи.

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

В моем приложении с разделенным edmx теперь у нас есть несколько повторяющихся объектов, чтобы получить преимущества навигационных свойств. Возможно, ваше приложение имеет истинное разделение доменов, но обычно все подключается к пользователю. Я рассматриваю возможность слияния двух сейчас, но это будет много работы. Поэтому я бы сказал, держите их вместе, пока это не станет проблемой.

Ответ 2

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

Взгляните на этот пост, где я подробно объяснил этот вопрос:
Имеет ли смысл создать единую диаграмму для всех объектов?

Ответ 3

Я думаю, что мы должны хранить несколько файлов edmx в нашем проекте. это как 1-edmx файл - один агрегат (коллекция связанных объектов). в соответствии с ddd (дизайн привода домена) мы можем иметь более чем одну совокупность в нашей модели. мы можем сохранить один файл edmx для каждого агрегата