Решения для динамического клиентского прокси WCF в Silverlight? - PullRequest
2 голосов
/ 27 января 2010

Мне нужен доступ к службам WCF из приложения Silverlight (3.0), но он мне нужен динамически.
К чему у меня есть доступ: интерфейсы служб (ServiceContracts) и определения данных (DataContracts).
Что мне нужно: во время выполнения генерируется / создается клиентский прокси WCF.

Есть какие-нибудь решения?

Ответы [ 3 ]

1 голос
/ 27 января 2010

Взгляните на пример проекта динамического прокси WCF

0 голосов
/ 12 марта 2010

Насколько я понимаю, если вы будете следовать процедуре клиентского доступа, описанной в Общие сведения о службах WCF В Silverlight 2 вы сможете выбирать, к какой службе обращаться во время выполнения, поскольку вам не нужно создавать прокси на стороне клиента.

Фрагмент этой статьи:

Теперь мы можем обратить наше внимание на клиентское приложение. Для начала позвольте мне начать с напоминания всем, что Вы никогда не должны использовать "Добавить службу Справочник "в Visual Studio для создание клиента магического сервиса. код невероятно многословен, трудно управляемые, правки перезаписывается, и это почти всегда используется в качестве оправдания не на самом деле выучить WCF.

Как я уже упоминал много раз, WCF опирается на концепцию ABC. Для обоих .NET и Silverlight, вы объединяете адрес и привязка с договором на канальном заводе, чтобы создать канал. Это не просто фантазия концептуальный архитектор говорят, это как будет выглядеть ваш код (признак действительно хорошего архитектура!) Ниже находится .NET версия того, что я имею в виду:

BasicHttpBinding basicHttpBinding = new BasicHttpBinding();
EndpointAddress endpointAddress = new EndpointAddress("http://localhost:1003/Person.svc");
IPersonService personService = new ChannelFactory<IPersonService>(basicHttpBinding, endpointAddress).CreateChannel();

Person person = personService.GetPersonData("F488D20B-FC27-4631-9FB9-83AF616AB5A6");
0 голосов
/ 28 января 2010

Я нашел этот «старый» пост (16 сентября 2008 г.).
Но я не мог заставить его работать должным образом под Silverlight 3.0 (не пробовал с предыдущими версиями Silverlight).

Блог WorkSight »Архив блога» Динамический клиентский прокси WCF в Silverlight

Дайте нам знать, если кому-то из вас удастся заставить это работать! :)

...