Если я генерирую объекты POCO из EntityFramework и использую их для перехода к / с сервера WCF, есть ли причина создавать модели на стороне клиента для использования в представлениях и моделях представления вместо того, чтобы напрямую использовать POCO?
Почти все примеры MVVM, которые я рассмотрел, привязываются прямо к объекту, возвращаемому службой WCF. Это хорошая практика? Существуют ли аргументы, которые можно привести для фактического сопоставления POCO с моделью и того, чтобы Views / ViewModels работали с объектом Model вместо POCO?
Основная причина, о которой я мог думать, - это проверка, однако, поскольку EF POCO являются частичные классы, они могут быть расширены, чтобы включить проверку.
РЕДАКТИРОВАТЬ
В большинстве ответов до сих пор упоминалось INotifyPropertyChanged
как основная причина для создания отдельной модели. Изменится ли ваш ответ, если вы используете сущности с самотслеживанием вместо POCO, которые уже включают INotifyPropertyChanged
? STE также являются частичными классами, которые можно расширить, чтобы включить проверку.