2009-04-01 3 views
0

Я пытаюсь построить объект клиента WCF с использованием строки URI времени выполнения. Это кажется достаточно простым, но у меня заканчивается что-то, чтобы попробовать, что это не похоже на «неправильный способ сделать это».Как динамически выбирать URI для службы WCF?

Исходный код заключается в следующем:

IPrototype p = new prototype.PrototypeClient(); 

, и я был своего рода ожидал, что это что-то вроде этого работать.

string uri = GetMeMyURI(); 
IPrototype p = new prototype.PrototypeClient(new URI(uri)); 

ответ

1

Это немного трудно сказать, что происходит не так, не зная, что ваш класс PrototypeClient есть, это WCF прокси?

Основной механизм для настройки клиента WCF программно является:

BasicHttpBinding binding = new BasicHttpBinding(); 
EndpointAddress address = new EndpointAddress(GetMeMyURI()); 
PrototypeClient yourProxy = new PrototypeClient(binding, address); 

Edit:

Чтобы избежать необходимости знать сервер связывания:

PrototypeClient yourProxy = new PrototypeClient(); 
yourProxy.Endpoint.Address = new EndpointAddress(GetMeMyURI(), null); 
+0

Пытался что, и он начал кричать о некорректных режимах, относящихся к BasicHttpBinding. * Приходите на WCF! Дайте мне уже проклятый объект по умолчанию! * – BCS

+0

Работайте со мной для работы http://davidsandor.com/blogs/tipsandtricks/archive/2008/08/03/ – BCS