WCF определяет, доступен ли ServiceHost - PullRequest
0 голосов
/ 19 октября 2011

У меня есть 2 приложения на C #, которые взаимодействуют через WCF, одно имеет одноэлементный объект ServiceHost с конечной точкой NetNamedPipeBinding, клиент создает экземпляр открытого интерфейса через вызов DuplexChannelFactory.CreateChannel().Иногда мой клиент запускается раньше, чем мой сервер, и поэтому клиент должен знать, доступен ли сервер.Вызов CreateChannel() успешно выполняется независимо, но последующие вызовы интерфейсных функций завершаются с ошибкой.После сбоя вызова любые вызовы после этого завершаются ошибкой, что канал неисправен.Мой единственный вариант - ловить эти исключения и каждый раз создавать новый канал, или есть лучший способ?

Спасибо, J

1 Ответ

3 голосов
/ 19 октября 2011

Канал может выйти из строя в любое время по ряду причин, таких как сбой сети.Это означает, что ответ «да», вам нужно обрабатывать ошибочные каналы.

Обычно я создаю новый канал каждый раз, когда мне нужен (я регистрирую свои каналы с переходным / ограниченным временем жизни в моей инверсии контейнера управления).

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