Как поддерживать несколько моделей Entity Framework в одном решении
===================================================================

 Я начал разработку приложения с использованием Entity Framework. 

 Например, я добавил пространство имен, содержащее весь мой код управления пользователями MyApp.Users, и оно содержит модель, помеченную как внутреннюю для пространства имен, и предоставляет функциональность только остальной части системы через интерфейсы. Это все хорошо. 

 Теперь я хочу определить другое пространство имен для обработки конкретной бизнес-логики. Я хочу, чтобы он содержал модель, которая знает только о другом подмножестве схемы базы данных, однако это подмножество перекрывается с таблицей Users. Когда я пытаюсь получить доступ ко второй модели в основном проекте, я получаю эту ошибку: 

 «EdmType не может быть сопоставлен с классами CLR несколько раз» 

 Я чувствую, что это не должно вести себя таким образом. В конце концов, на пользовательскую таблицу ссылаются 2 разные модели в 2 разных пространствах имен ... как VS узнает, что на таблицу ссылаются дважды? 

 Кто-нибудь видел эту проблему и, возможно, выяснил, как позволить одной и той же таблице существовать в разных моделях? 

 В качестве альтернативы - представляет ли это какой-то анти-шаблон Entity Framework, которого мне следует избегать? 

 Чтобы повторно использовать типы в нескольких моделях, необходимо выполнить некоторые [конкретные действия, описанные в этом сообщении в блоге](http://blogs.msdn.com/adonet/archive/2008/11/25/working-with-large-models-in-entity-framework-part-2.aspx) . Как и многие другие расширенные возможности Entity Framework, это работает, но не так хорошо работает с дизайнером GUI. Смотрите также [этот вступительный пост](http://blogs.msdn.com/adonet/archive/2008/11/24/working-with-large-models-in-entity-framework-part-1.aspx) для получения дополнительных идей о работе с более крупными моделями.