그래, 가능한 한 솔직하게 만들려고 노력할 것입니다. VS2010에서 VB.Net을 사용하고 있습니다. WCF 서비스를 자체 호스팅하려고합니다. (실제로는 Windows 서비스에 있지만 간단한 콘솔 앱을 통해이 작업을 수행하려고합니다 아래 코드는 문제의 코드이며 TCP/IP 주소는 여기에 직접 입력됩니다 WCF 서비스 자체는 단순히 DEFAULT라는 새로운 WCF 서비스 프로젝트. 내가이 훨씬 더 간단 할 수 있다고 생각하지 않습니다WCF가 TCP 포트에 바인딩되지 않음 (netstat -a를 통해 확인)
Dim host As New ServiceHost(GetType(TestService))
Dim tcpb As New NetTcpBinding()
tcpb.PortSharingEnabled = True
host.AddServiceEndpoint(_
GetType(ITestService), _
tcpb, _
"net.tcp://localhost:62020/TestWcfService/" _
)
host.Open()
Console.ReadKey(True)
host.Close()
.. 내가 netstat -a
을 실행할 때 청취를 표시하지 않습니다? 실제로 바인딩 할 포트를 얻기 위해해야 할 특별한 무언가가있다 port on 62020 난 정말 내 whits 끝에 이것에.
배경 : IIS에서 마이그레이션하려고하는 또 다른 WCF 서비스가 있고 Windows 서비스에서 실행되는 별도의 서버로 .WCF 서비스는 것입니다 내부적으로 액세스 할 수 있습니다. 나는 마이그레이션을 얻는 데 많은 문제를 겪었으므로 바인딩 할 간단한 서비스를 얻고 클라이언트 (웹 사이트)에 액세스하도록하십시오. 다른 WCF는 바인딩 (다른 포트)이지만 통신 오류가 발생합니다. 문자 그대로 **** - 톤의 물건이 있고, 거의 나의 요구에 맞지 않으며, 나는 그것으로 작업하는 데 많은 어려움을 겪고 있습니다.
아니요 ... 인터페이스가 ... :/good point를 지정합니다. –
Tracker1
비슷한 문제로 밝혀졌습니다 ... 적절한 바인딩과 별도로 엔드 포인트 uri를 추가했습니다 ... 현재 코드에서 수행 중이지만 구성 기반 설치 (서비스/클라이언트 설정 사용을 위해 조정 중입니다.) ... 클라이언트 프록시는 백엔드가 여러 시스템에서 실행되므로 (사용자/세션에 따라) 여전히 코드화됩니다. – Tracker1