Я новичок в программировании wcf, работаю над небольшим проектом, и у меня проблемы с совместным использованием порта net.tcp. Я использую .net framework 4 и iis 7.
У меня есть две службы wcf (serviceA и serviceB), размещенные на нашем сервере на отдельных веб-сайтах в IIS. Каждый веб-сайт имеет свой собственный файл .svc, web.config и bin. Если у меня есть каждая из этих служб на разных портах net.tcp, тогда нет проблем, и я могу добавить ссылку на службу для каждой из них из Visual Studio на моем компьютере. Службы работают нормально.
Однако вскоре мы начнем проект со многими другими сервисами, и мы хотим избежать необходимости открывать TCP-порт для каждого из них, поэтому я пытался получить сервис A и сервис B для общего доступа к порту. Если я настрою их на один и тот же порт, я смогу получить доступ к первой добавленной службе, но когда я попытаюсь получить доступ ко второй службе, добавленной к тому же порту, я получаю следующую ошибку:
Метаданные содержат неразрешимую ссылку: «net.tcp://myserver/serviceB.svc». Соединение сокета было прервано. Это может быть вызвано ошибкой обработки вашего сообщения, превышением тайм-аута приема удаленным хостом или проблемой с базовыми сетевыми ресурсами. Тайм-аут локального сокета был **. Существующее соединение было принудительно закрыто удаленным узлом. Если служба определена в текущем решении, попробуйте создать решение и снова добавить ссылку на службу.
Я не могу понять, что происходит не так. Я много искал по этому вопросу и убедился, что работают следующие службы:
Служба активации процессов Windows Служба совместного использования портов Net.Tcp Адаптер прослушивателя Net.Tcp
Кроме того, в расширенных настройках веб-сайта включен протокол net.tcp. В настоящее время я думаю, что это может быть как-то связано с тем, как я определил привязки net.tcp в диспетчере IIS. Оба моих веб-сайта, на которых запущены их независимые службы, имеют следующее: 808:*(net.tcp) это правильно?
Как я уже говорил ранее, службы tcp работают нормально, если они настроены на два отдельных порта, поэтому проблема должна быть связана с совместным использованием портов. Очень благодарен за любой совет