我有一個wcf服務,並使用控制檯應用程序作爲我的服務的主機。當我使用這樣的基地址:<baseaddres ="http://ipaddress:8080/" />
。當我通過Web瀏覽器檢查我的服務操作時,我可以打開服務WSDL並且工作正常。wcf服務主機僅在端口號8080上運行
但是,當我將端口號更改爲別的。服務主機可以正常啓動(沒有使用過的端口號或其他)。當我去檢查服務是否通過網絡瀏覽器運行時,該服務未被顯示。最終我的客戶也找不到該服務。
的app.config配置
<services>
<service name="Natatorium_WCF.NatatoriumService"
behaviorConfiguration="ServiceBehavior">
<endpoint address="NatatoriumService"
binding="wsHttpBinding"
contract="Natatorium_WCF.INatatoriumService"
bindingConfiguration="wsHttpBindingConfig">
</endpoint>
<endpoint address="NatatoriumService"
binding="netTcpBinding"
contract="Natatorium_WCF.INatatoriumService"
bindingConfiguration="netTcpBindingConfig" >
</endpoint>
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange"/>
<host>
<baseAddresses>
<add baseAddress="http://[ServerName]:[PortNO.1]"/>
<add baseAddress="net.tcp://[ServerName]:[PortNO.2]"/>
</baseAddresses>
</host>
</service>
</services>
這是主機代碼來啓動該服務(控制檯應用程序)。
static void Main(string[] args)
{
ChangeServerConfigFileAttributeValue("8080", "8090");
using (ServiceHost host = new ServiceHost(typeof(Natatorium_WCF.NatatoriumService)))
{
host.Open();
Console.WriteLine("Listening...");
Console.ReadLine();
}
}
您有任何防火牆或端口限制? –
我們可以看到配置嗎? – paramosh
我不知道如何檢查防火牆,順便說一下我的防火牆關閉@TMcKeown –