新聞中心
WCF中有一種叫做地址的應(yīng)用技術(shù)。通過學(xué)習(xí)我們知道,WCF地址包括兩種,一種為邏輯地址而另一種就是我們今天要為大家重點(diǎn)介紹的WCF物理地址。希望朋友們可以從中獲得一些幫助。

創(chuàng)新互聯(lián)建站主要業(yè)務(wù)有網(wǎng)站營銷策劃、網(wǎng)站建設(shè)、網(wǎng)站制作、微信公眾號開發(fā)、微信平臺小程序開發(fā)、HTML5建站、程序開發(fā)等業(yè)務(wù)。一次合作終身朋友,是我們奉行的宗旨;我們不僅僅把客戶當(dāng)客戶,還把客戶視為我們的合作伙伴,在開展業(yè)務(wù)的過程中,公司還積累了豐富的行業(yè)經(jīng)驗(yàn)、全網(wǎng)整合營銷推廣資源和合作伙伴關(guān)系資源,并逐漸建立起規(guī)范的客戶服務(wù)和保障體系。
設(shè)定WCF物理地址
前面我們輸出的結(jié)果邏輯地址和物理地址是相同的,我們可以通過代碼或者配置文件來設(shè)定終結(jié)點(diǎn)的物理地址。
- WSHttpBinding wsbinding = new WSHttpBinding();
- calculatorServiceHost.AddServiceEndpoint(
- typeof(ICalculator),
- wsbinding,
- "urn:calcservice", // 邏輯地址
- new Uri("http://localhost:8887/CalculatorService") // 物理地址
- );
又或者通過配置文件來設(shè)置ListenUri,如下代碼所示:
- < endpoint address="urn:calcservice"
- binding ="wsHttpBinding"
- contract="TerryLee.WCFAddressing.Contract.ICalculator"
- listenUri="http://localhost:8887/CalculatorService"
- bindingConfiguration="securityBinding">
- < /endpoint>
這里我們只需要注意的是在指定物理地址時,仍然可以使用相對地址,這一點(diǎn)與設(shè)置邏輯地址時是一樣的。 #t#
WCF物理地址模式
了解了物理地址和邏輯地址之間的關(guān)系,我們再看一下在設(shè)置監(jiān)聽地址時的兩種模式,通過ListenUriMode枚舉來指定,它定義了兩個枚舉值:
Explicit:完全原樣使用 ListenUri,默認(rèn)值。
Unique:指定傳輸是否應(yīng)使用特定傳輸機(jī)制,以確保 ListenUri 是***的
根據(jù)傳輸所采用的協(xié)議不同,WCF會采用不同的策略來保證ListenUri***,具體的策略如下所示:
1.非TCP傳輸,在ListenUri的末尾附加一個GUID。
2.對于獨(dú)占模式下的 TCP(PortSharingEnabled 為 false),綁定到一個***可用端口號。
3.對于端口共享模式下的 TCP(PortSharingEnabled 為 true),在ListenUri的末尾附加一個GUID。
文章題目:WCF物理地址如何進(jìn)行正確設(shè)定
本文鏈接:http://m.fisionsoft.com.cn/article/dposgdo.html


咨詢
建站咨詢
