У меня есть служба WCF XYZ, которая будет развернута на нескольких хостах.Каждый такой сервис может иметь соединение с другим сервисом XYZ, развернутым на одном из других хостов.Это распределенная система, в которой состояния между службами будут различаться.
Для того, чтобы общаться, для меня не имеет смысла добавлять ссылку на службу в Visual Studio, потому что это просто добавит избыточность (службауже знает, с чем он будет взаимодействовать).
Поэтому в настоящее время моя идея состоит в том, чтобы указать другие конечные точки службы в файлах App.config каждой службы.Например:
<client>
<endpoint name="BEL"
address="tcp://us.test.com:7650/OrderManagementService"
binding="tcpBinding"
contract="IOrderManagementService"/>
<endpoint name="BEL2"
address="tcp://us.test2.com:7650/OrderManagementService"
binding="tcpBinding"
contract="IOrderManagementService"/>
</client>
Теперь я просто хочу прочитать эти настройки и создать ChannelFactories и Channels в моем коде.Тем не менее, это становится проблемой, чтобы сделать это.
Два вопроса: я делаю вещи правильно;и если да, то каков наилучший способ извлечь эти значения из файла конфигурации?