2007年3月15日 星期四

AddressAlreadyInUseException

 

使用WCF ,且使用wsDualHttpBinding , 常常Client app 會發生如下的錯誤

 

System.ServiceModel.AddressAlreadyInUseException: HTTP could not register URL http://+:80/Temporary_Listen_Addresses/c030eb34-4c63-446f-b4d1-0bb7df8c4774/ because TCP port 80 is being used by another application. ---> System.Net.HttpListenerException: 程序無法存取檔案,因為檔案正由另一個程序使用。

 

這是因為 wsDualHttpBinding 預設也是使用 80 port,而此 port 已被 IIS 的預設網站使用了。

 

此時,必須在 client app.conifg 設定 clientBaseAddress 為不同的 port

 

<wsDualHttpBinding>

                <binding clientBaseAddress=http://localhost:9865/myClient/ />

沒有留言:

Share with Facebook