Можете ли вы связать две модели структуры сущностей? - PullRequest
0 голосов
/ 19 октября 2011

Во-первых, это версия EF 3.5, а не новая версия 4.

Вот простой пример того, что мне нужно.

Представьте, что в первом EDMX у нас есть объекты для сотрудника и отдела. Представьте, что во втором EDMX у нас есть объекты для заказов.

Обе модели EDMX указывают на одну и ту же базу данных.

  1. Можно ли использовать сотрудника EDMX из первой модели по порядку второй модели?
  2. Можете ли вы изменить пространство имен разных объектов в одном и том же EDMX?
  3. Для получения бонусных баллов и прочего из любопытства, если бы заказ находился в отдельной базе данных, могу ли я получить приказ использовать внешний ключ от первичного ключа сотрудника?

Спасибо

Ответы [ 2 ]

2 голосов
/ 20 октября 2011

Возможно , но работа с такими подключенными моделями довольно сложна (продвинута), потому что вы потеряете поддержку дизайнера и вам придется поддерживать модели в виде файлов XML.Также он поддерживается только на уровне CSDL файла EDMX, поэтому MSL и SSDL должны быть общими.Ссылка между CSDL может быть только одним способом, поэтому Order сможет использовать Employee и Department, но Department и Employee не будут знать о Order (или обратном поведении, если вы сделаете ссылку впротивоположное направление).

Было бы намного проще объединить эти два EDMX в один.

1 голос
/ 14 февраля 2014

В публикации от 2008 года, разработанной ведущим разработчиком EF, обсуждаются 2 решения этой проблемы:

  • а. Несколько файлов CSDL (моделей) при совместном использовании MSL и SSDL.
  • б. Разделите схемы приложений на разные наборы CSDL, MSL и SSDL файлы.

Похоже, решение (а) - это то, о чем говорил Ладислав Мрнка.

Сообщение: http://blogs.msdn.com/b/adonet/archive/2008/11/25/working-with-large-models-in-entity-framework-part-2.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...