0
我正在學習編寫WCF服務,並且我正在閱讀本書中的示例,逐步地編寫了我的簡單服務。服務在我的個人電腦和連接到本地網絡的每臺設備上都能正常工作。當我嘗試從本地網絡的「外部」連接時,如果無法看到服務(通過客戶端應用程序(通過我寫的和通過瀏覽器(MEX)))。
我的主人的app.config:
無法連接到本地網絡以外的WCF服務
<system.serviceModel>
<services>
<service name="WCF_1_MagicEightBallService.MagicEightBallService"
behaviorConfiguration="MagicEightBallServiceMEXBehavior">
<endpoint address=""
binding="basicHttpBinding"
contract="WCF_1_MagicEightBallService.IMagicEightBall">
</endpoint>
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange">
</endpoint>
<host>
<baseAddresses>
<add baseAddress="http://[my ip]:8080/MagicEightBallService"/>
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="MagicEightBallServiceMEXBehavior">
<serviceMetadata httpGetEnabled="true"/>
<useRequestHeadersForMetadataAddress/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
我的IP是我的外部IP,但我一直在使用的IP使用和不使用無線路由器,並用不同的端口嘗試。
除非您有商業互聯網計劃,否則您的ISP很可能會阻止大多數默認網絡端口(25,80,80,80,443等)。 – Cameron
@Cameron所以沒有辦法自己託管網絡服務?可以託管IIS的幫助? – Bibipkins
你可以在IIS中託管它,你只需要使用非默認端口。只需在... 10000和65535之間選擇一個數字即可。 – Cameron