掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
經(jīng)過長時間學習WCF,于是和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會你更多東西。一個要和服務端通訊的客戶端要做的第一件事情,就是搞清數(shù)據(jù)要發(fā)給誰?目的地在哪?

創(chuàng)新互聯(lián)建站長期為上1000家客戶提供的網(wǎng)站建設(shè)服務,團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為涪城企業(yè)提供專業(yè)的成都做網(wǎng)站、成都網(wǎng)站建設(shè),涪城網(wǎng)站改版等技術(shù)服務。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
#T#而WCF Address正是通過一個Uri來唯一標示一個WCF的終節(jié)點(EndPoint)的,它標示了消息發(fā)送的目的地。在WCF數(shù)據(jù)通訊中,它解決了服務在哪里的問題。如何在配置文件中指定WCF Address在配置文件中,有兩種方式可以指定WCF Address,一種是絕對地址方式,另外是相對地址方式,分別如下:
絕對地址
- <addbaseAddressaddbaseAddress="http://localhost:8731/"/>
- <endpointaddressendpointaddress="http://localhost:8731/Service"binding="basicHttpBinding"contract="Wcf_Address_Config.IService1">
相對地址
- <addbaseAddressaddbaseAddress="http://localhost:8731/"/>
- <endpointaddressendpointaddress="Service1"binding="basicHttpBinding"contract="Wcf_Address_Config.IService1">
在網(wǎng)上有人說絕對地址是通過將httpGetEnabled設(shè)置為true,并且設(shè)置httpGetUrl為絕對地址是在設(shè)置endPoint的說法有些不準確,因為在WCF中有兩種地址,一種是訪問endPoint時候用到地址,另外一種是服務描述的地址,服務描述在wcf中被稱作serviceMetadata,通過它能夠產(chǎn)生代理類,比如,我們做如下的設(shè)置:
- <serviceMetadatahttpGetEnabledserviceMetadatahttpGetEnabled="True"httpGetUrl="http://localhost:8731/Service"/>
只代表在http://localhost:8731/Service/?wsdl上能找到服務描述,可以通過http://localhost:8731/Service/?wsdl生成代理類,而不是將endPoint的地址設(shè)置為了http://localhost:8731/Service,這點一定要注意,不要受有些說法的誤導。

我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流