使用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/ />
沒有留言:
張貼留言