Есть приложение. Есть WCF-сервис.
WCF-сервис функционирует нормально. Через WCF Test Client все методы нормально вызываются и возвращают ожидаемые данные.
Далее, на следующем этапе нужо сделать так, чтобы приложение могло динамически менять WCF-сервисы, от которых оно получает данные. Все сервисы реализуют один и тот же интерфейс контракта.
Как добавлять WCF-службу в проект, все понятно и легко. Но вот как динамически во время работы программы подключиться к WCF-службе, в инете инфы так и не нашел. =(
Прошу помощи!
Буду благодарен за любую информацию!
var binding = new NetNamedPipeBinding(...); // or anyvar channelFactory = new ChannelFactory<IServiceIntf>(binding,
new EndpointAddress("net.pipe://localhost/SomeService");
IServiceIntf channel = channelFactory.CreateChannel();
channel.SomeMethod(...);
"Нормальные герои всегда идут в обход!"
Re[2]: Динамическое подключение клиента к WCF-службе.
От:
Аноним
Дата:
27.10.10 15:40
Оценка:
А как сделать так, чтобы с нуля произвести подключение? Чтобы можно было увеличивать количество подключенных WCF-сервисов.
Re[3]: Динамическое подключение клиента к WCF-службе.
Здравствуйте, Аноним, Вы писали:
А>А как сделать так, чтобы с нуля произвести подключение? Чтобы можно было увеличивать количество подключенных WCF-сервисов.
С нуля, это как?
Re[3]: Динамическое подключение клиента к WCF-службе.
Здравствуйте, Аноним, Вы писали:
А>А как сделать так, чтобы с нуля произвести подключение? Чтобы можно было увеличивать количество подключенных WCF-сервисов.
А выше чего, с единицы что-ли? Или с десятки? Каждый сервис поддерживает определённый биндинг и находится по определённому адресу (EndpointAddress) Создавайте и подключайте хоть сотню. Интерфейс-то у Вас должен быть, иначе как Вы его использовать собираетесь? А если нет, так смотрите Metadata Exchange. Но, во-первых, сервис в общем случае не обязан mex поддерживать, а во-вторых, ИМХО, это занятие для мазохистов, только для написания инструментария имеет смысл.
"Нормальные герои всегда идут в обход!"
Re[4]: Динамическое подключение клиента к WCF-службе.
От:
Аноним
Дата:
27.10.10 20:34
Оценка:
Здравствуйте, dorofeevilya, Вы писали:
D>Здравствуйте, Аноним, Вы писали:
А>>А как сделать так, чтобы с нуля произвести подключение? Чтобы можно было увеличивать количество подключенных WCF-сервисов. D>С нуля, это как?
Ну без всяких инструментов динамически произвести подключение во время работы программы на заранее не известный адрес, зная только что он реализует имеющийся у меня интерфейс.
Идея такая.
Re[4]: Динамическое подключение клиента к WCF-службе.
От:
Аноним
Дата:
27.10.10 20:39
Оценка:
Здравствуйте, Jolly Roger, Вы писали:
JR>Здравствуйте, Аноним, Вы писали:
А>>А как сделать так, чтобы с нуля произвести подключение? Чтобы можно было увеличивать количество подключенных WCF-сервисов.
JR>А выше чего, с единицы что-ли? Или с десятки? Каждый сервис поддерживает определённый биндинг и находится по определённому адресу (EndpointAddress) Создавайте и подключайте хоть сотню. Интерфейс-то у Вас должен быть, иначе как Вы его использовать собираетесь? А если нет, так смотрите Metadata Exchange. Но, во-первых, сервис в общем случае не обязан mex поддерживать, а во-вторых, ИМХО, это занятие для мазохистов, только для написания инструментария имеет смысл.
Вот я и пытаюсь понять как мне не используя инструментарий студии для генерации клиента, во время работы программы инициализировать клиент, задать ему параметры, адрес WCF-службы начать его использовать. Интерфейс, который реализует эта служба у меня есть.
Вот этого я пытаюсь добиться, но пока безуспешно =(
Re[4]: Динамическое подключение клиента к WCF-службе.
Здравствуйте, Jolly Roger, Вы писали:
JR>Здравствуйте, Аноним, Вы писали:
А>>А как сделать так, чтобы с нуля произвести подключение? Чтобы можно было увеличивать количество подключенных WCF-сервисов.
JR>А выше чего, с единицы что-ли? Или с десятки? Каждый сервис поддерживает определённый биндинг и находится по определённому адресу (EndpointAddress) Создавайте и подключайте хоть сотню. Интерфейс-то у Вас должен быть, иначе как Вы его использовать собираетесь? А если нет, так смотрите Metadata Exchange. Но, во-первых, сервис в общем случае не обязан mex поддерживать, а во-вторых, ИМХО, это занятие для мазохистов, только для написания инструментария имеет смысл.
Инструментарий как раз и пишу =)
Re: Динамическое подключение клиента к WCF-службе.
Здравствуйте, Аноним, Вы писали:
А>Всем добрый вечер!
А>Есть следующая задача:
А>Есть приложение. Есть WCF-сервис. А>WCF-сервис функционирует нормально. Через WCF Test Client все методы нормально вызываются и возвращают ожидаемые данные.
А>Далее, на следующем этапе нужо сделать так, чтобы приложение могло динамически менять WCF-сервисы, от которых оно получает данные. Все сервисы реализуют один и тот же интерфейс контракта.
А>Как добавлять WCF-службу в проект, все понятно и легко. Но вот как динамически во время работы программы подключиться к WCF-службе, в инете инфы так и не нашел. =(
А>Прошу помощи! А>Буду благодарен за любую информацию!