Я играю над созданием демонстрационного приложения-призмы. В моем приложении есть проект оболочки и еще один модуль, в котором есть служба призмы и представление (и модель представления). (в основном на основе видео Майка Тэлти, но в WPF, а не в Silverlight).
Я настраиваю сервис-призму для вызова своего веб-сервиса. Казалось, что все настроено правильно, но когда я вызываю этот код:
MyServiceReferenceClient myServiceReferenceClient = new MyServiceReferenceClient();
У меня такая ошибка:
Не удалось найти элемент конечной точки по умолчанию, который ссылается на контракт MyServiceReference.IMyService в разделе конфигурации клиента ServiceModel. Это может быть связано с тем, что для вашего приложения не найден файл конфигурации или потому, что в клиентском элементе не может быть найден элемент конечной точки, соответствующий этому контракту.
Я погуглил об ошибке и обнаружил, что мне нужно поместить содержимое моего app.config в мой проект оболочки, чтобы он работал.
Я скопировал этот файл в свой проект Shell, и он работал нормально.
Но мне это не нравится. Идея призмы - быть модульной. Если мне нужно иметь ссылки на все веб-службы, вызываемые в модулях, оболочка должна знать больше о внутренней работе каждого модуля, чем следовало бы.
Есть ли способ вызывать веб-сервисы в модулях и при этом сохранять классные преимущества Prism от модулей (через файл конфигурации) и регионов, которые являются единственной вещью, о которой должна знать оболочка?