Определение допустимости адреса конечной точки WCF net.tcp - PullRequest
1 голос
/ 26 июня 2010

Я создаю инструмент для проверки, доступны ли все точки соприкосновения (строки подключения к БД, почтовые серверы, веб-службы, службы WCF и т. Д.), Используемые набором приложений, после переноса аварийного восстановления в удаленное местоположение.

Инструмент должен проверить, является ли данный адрес конечной точки net.tcp действительным и доступным, без создания клиентского прокси и без учета привязки или поведения, используемого фактическим клиентом WCF.Инструменту не нужно вызывать какой-либо метод службы, и он будет запускаться только системными администраторами с использованием учетных данных домена с высоким уровнем привилегий.

Это легко сделать для служб на основе HTTP:

hwrRequest = (HttpWebRequest)WebRequest.Create(i_WebServiceUrl);
hwrRequest.Timeout = i_nTimeoutSeconds * 1000;
hwrResponse = (HttpWebResponse)hwrRequest.GetResponse();
if (hwrResponse.StatusCode == HttpStatusCode.OK)
:
:

Существует ли эквивалентный метод для служб WCF net.tcp?

1 Ответ

0 голосов
/ 26 июня 2010

Прежде всего, почему вы ожидаете, что ваш код WebRequest будет работать? Если служба не генерирует метаданные или иным образом не отвечает на глагол HTTP GET, ваш ответ истечет время ожидания.

Я рекомендую создать административный договор на обслуживание и внедрить его во всех ваших службах. Вы можете просто захотеть добавить метод Ping() к этому контракту, но вы также можете решить добавить другие методы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...