Недавно я прочитал статью «The Entity Framework In Layered Architecture» и там написано, что мы можем отправлять EF-объекты клиенту через WCF. Но во многих потоках на Stackoverflow люди говорят, что POCO (DTO) -объекты должны использоваться, когда мы используем WCF. И у меня есть некоторые вопросы.Entity Framework в многоуровневых архитектурах
Почему Microsoft добавила атрибут DataContract в EF-сущности? Microsoft хочет, чтобы мы использовали эти объекты повсюду в наших приложениях? Или это только для очень простых приложений и для быстрого развития?
Если я использую объекты POCO, должен ли я создавать автоматически созданные EF-объекты, POCO-Entities и после этого использовать любую библиотеку сопоставлений между ними? Или я должен использовать только объекты POCO во всех компонентах моего приложения?
Если у меня уже есть свой собственный бизнес-объект, который имеет некоторые методы, и он должен быть сопоставлен с объектом POCO, на каком слое я должен преобразовать POCO-объект в свою сущность (например, у меня есть уровень сохранения, бизнес логический уровень, уровень обслуживания (WCF), уровень презентатора (клиент, использование WCF), уровень пользовательского интерфейса)? Или я не должен создавать такие свои сущности?
Заранее спасибо
Имейте в виду, что эта статья была написана 2 года назад. С тех пор многое изменилось. EF 4.0 предлагает новые функции, работает с poco, улучшает работу с wcf и так далее. – nemke
Да, я понимаю. Я только пытаюсь решить, как разработать мое приложение. –
Могу ли я спросить вас, что вы используете в своем пользовательском слое? – SDReyes