WCF配置指定Address具體實現方法介紹
在對WCF進行實際操作時,對于Address的相關應用是一個非常重要的操作技術。那么我們今天將會在這篇文章中,為大家詳細介紹一下有關WCF配置指定Address的相關實現技巧,希望能給大家帶來一些幫助。
相對地址
- < host>
- < baseAddresses>
- < add baseAddress = "http://localhost:8731/" />
- < /baseAddresses>
- < /host>
- < endpoint address ="Service1" binding="basicHttpBinding"
contract="Wcf_Address_Config.IService1">< /endpoint>
這個WCF的實際地址:
http://localhost:8731/Service1
絕對地址
- < host>
- < baseAddresses>
- < add baseAddress = "http://localhost:8731/" />
- < /baseAddresses>
- < /host>
- < endpoint address ="http://localhost:8731/Service"
binding="basicHttpBinding" contract="Wcf_Address_Config.IService1">
< /endpoint>
是絕對地址的時候,baseAddresses就不起作用了,實際地址就是endpoint中設置的地址
在網上有人說絕對地址是通過將httpGetEnabled設置為true,并且設置httpGetUrl為絕對地址是在設置endPoint的說法有些不準確,因為在WCF中有兩種地址,一種是訪問endPoint時候用到地址,另外一種是服務描述的地址,服務描述在wcf中被稱作serviceMetadata,通過它能夠產生代理類,比如,我們做如下的設置:
- < serviceMetadata httpGetEnabled="True"
httpGetUrl="http://localhost:8731/Service"/>
只代表在http://localhost:8731/Service/?wsdl上能找到服務描述,可以通過http://localhost:8731/Service/?wsdl生成代理類,而不是將endPoint的地址設置為了http://localhost:8731/Service,這點一定要注意,不要受有些說法的誤導。
【編輯推薦】