WCF - это отличная технология, однако, как уже говорили другие, похоже, что вы пытаетесь нарушить основные принципы WCF. Я могу ошибаться, но похоже, что вы хотите отправить свои модели просмотра через границу удаленного взаимодействия?
Причина, по которой, по моему мнению, неправильно отправлять модели представления через границу удаленного взаимодействия, является архитектурной. Причина в том, что у меня могут быть несколько клиентских приложений, то есть веб-сайт и настольное приложение wpf. Эта модель представления относится только к приложению WPF. Это в значительной степени зависит от платформы (в большинстве случаев). Так как модели представления зависят от платформы, они принадлежат платформе, а не вашим услугам.
Ваши объекты DTO (то есть классы моделей услуг) должны быть отделены от ваших моделей представления, поскольку ваши требования к представлениям могут измениться в любом клиентском приложении, и ваши службы могут захотеть предоставлять те же службы, что и раньше. Хорошо, чтобы ваши клиентские приложения зависели от вашей модели. Я обычно помещаю их в общий проект, общий для моего сервисного проекта и проектов клиентских приложений.
Это примерно так. Хороший дизайн должен позволять кому-либо потенциально потреблять его и делать с ним то, что он хочет. Веб-сервисы, такие как flikr, facebook или amazon, не сообщают вам, как и какую информацию вы должны отображать в своем приложении, а также не предлагают вашу. (Я не защищаю слепо следовать их замыслу, но это пример сообщества, на который вы можете взглянуть).
Ваши модели представления по умолчанию должны использовать привязываемые типы данных, реализуя интерфейс INotifyPropertyChanged и т. Д., Поэтому обновление данных в модели представления должно быть очень простым делом. Лучшее, что нужно сделать при разработке приложения, - подумать, если бы я сделал что-то, чего нет в моем списке функций, как бы я это сделал. Неужели я затрудняюсь сказать, выставлять свои услуги публике (даже подумал, что я не намерен это делать). Это сохранит ваш дизайн надежным и в хорошей форме, когда клиенты передумают в том, что хотят.