欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

元數據終結點

系統 1716 0

綁定

服務之間的通信方式多種多樣,傳輸協議多種多樣,消息編碼格式多種多樣,消息安全保障策略多種多樣...等等這些如果組合起來,其數量非常之多,并且組合這些選項,有的彼此約束,有的互斥。對大多數應用程序而言,管理這么復雜的組合并無商業價值。然而,一旦做出錯誤的組合,就會影響系統的性能,質量,造成嚴重的后果。

為了簡化這些選項,方便管理,WCF引入了綁定(binding),將這些通信特征組合在一起。

WCF定義了五種常用的綁定。

  • 基本綁定

對應于BasicHttpBinding類。基本綁定使得服務看起來像是一個傳統的Web服務,能夠基于基本的Web服務信息進行通信。

  • TCP綁定

對應于NetTcpBinding類。TCP綁定使用TCP協議實現在Intranet中跨機器的通信。

  • IPC綁定

對應于NetNamedPipeBinding類。它使用命名管道為同意機器通信進行傳輸。

  • Web服務綁定

對應于WSHttpBinding類。

  • MSMQ綁定

對應于NetMsmqBinding類。

有三種使用綁定的方式:(1)如果滿足需要,可以直接使用內置的綁定類型;

           (2)重新配置綁定的屬性;

           (3)編寫自定義綁定;

終結點(Endpoints)

服務與地址,綁定,契約有關。其中,地址定義了服務的位置,綁定定義了服務通信的方式,契約則定義了服務的內容。所以,可以這樣理解,終結點就是地址,綁定,契約的混合體(ABC)。?

每一個終結點都包含了三個元素,而宿主則負責公開終結點。從邏輯上講,終結點相當于服務的接口。

每個服務至少公開一個業務終結點,每個終結點有且只能有一個服務契約。

Address

地址的三個典型功能(服務標識/定位,輔助尋址和服務身份標識)分別對應Uri,Headers和Identity三個只讀屬性。

?

元數據交換終結點

默認情況下,服務不會發布其元數據,那么如何獲得元數據?

有兩種方式可以發布服務的元數據:一是基于HTTP-GET協議提供元數據,它是一種絕大多數平臺都能支持的簡單text-based協議;另一種是元數據交換終結點。

  • 基于HTTP-GET協議

不發布元數據,我們當然就用不了服務,使用HTTP-GET協議,那么基地址中必須有一個http協議的,假如有這么一種情況,需要用HTTP-GET協議發布服務的元數據,但是通信卻使用TCP,那么至少有兩個基地址

以下App.config配置如下

      
        <?
      
      
        xml version="1.0" encoding="utf-8" 
      
      
        ?>
      
      
        <
      
      
        configuration
      
      
        >
      
      
        <
      
      
        system.serviceModel
      
      
        >
      
      
        <
      
      
        services
      
      
        >
      
      
        <
      
      
        service 
      
      
        name
      
      
        ="WCFServer.MyService"
      
      
         behaviorConfiguration
      
      
        ="MEX"
      
      
        >
      
      
        <
      
      
        host
      
      
        >
      
      
        <
      
      
        baseAddresses
      
      
        >
      
      
        <
      
      
        add 
      
      
        baseAddress
      
      
        ="net.tcp://localhost:5566/"
      
      
        />
      
      
        <
      
      
        add 
      
      
        baseAddress
      
      
        ="http://localhost:6655/"
      
      
        />
      
      
        </
      
      
        baseAddresses
      
      
        >
      
      
        </
      
      
        host
      
      
        >
      
      
        <
      
      
        endpoint 
      
      
        address
      
      
        ="HelloWorld"
      
      
        

                  binding
      
      
        ="netTcpBinding"
      
      
        

                  contract
      
      
        ="WCFServer.IMyService"
      
      
        />
      
      
        <!--
      
      
        <endpoint address="MEX"

                  binding="mexTcpBinding"

                  contract="IMetadataExchange"/>
      
      
        -->
      
      
        </
      
      
        service
      
      
        >
      
      
        </
      
      
        services
      
      
        >
      
      
        <
      
      
        behaviors
      
      
        >
      
      
        <
      
      
        serviceBehaviors
      
      
        >
      
      
        <
      
      
        behavior 
      
      
        name
      
      
        ="MEX"
      
      
        >
      
      
        <
      
      
        serviceMetadata 
      
      
        httpGetEnabled
      
      
        ="true"
      
      
        />
      
      
        </
      
      
        behavior
      
      
        >
      
      
        </
      
      
        serviceBehaviors
      
      
        >
      
      
        </
      
      
        behaviors
      
      
        >
      
      
        </
      
      
        system.serviceModel
      
      
        >
      
      
        </
      
      
        configuration
      
      
        >
      
    
  • ?元數據交換終結點

基于HTTP-GET發布元數據僅僅是WCF的一個特性,它并不保證其他交互平臺也會支持。元數據發布具有標準形式,即元數據交換終結點,稱為MEX終結點。

既然是終結點,那么就有address,binding,contract,只不過contract是IMetadataExchange。下面配置為使用元數據交換終結點的配置

      
        <?
      
      
        xml version="1.0" encoding="utf-8" 
      
      
        ?>
      
      
        <
      
      
        configuration
      
      
        >
      
      
        <
      
      
        system.serviceModel
      
      
        >
      
      
        <
      
      
        services
      
      
        >
      
      
        <
      
      
        service 
      
      
        name
      
      
        ="WCFServer.MyService"
      
      
         behaviorConfiguration
      
      
        ="MEX"
      
      
        >
      
      
        <
      
      
        host
      
      
        >
      
      
        <
      
      
        baseAddresses
      
      
        >
      
      
        <
      
      
        add 
      
      
        baseAddress
      
      
        ="net.tcp://localhost:5566/"
      
      
        />
      
      
        </
      
      
        baseAddresses
      
      
        >
      
      
        </
      
      
        host
      
      
        >
      
      
        <
      
      
        endpoint 
      
      
        address
      
      
        ="HelloWorld"
      
      
        

                  binding
      
      
        ="netTcpBinding"
      
      
        

                  contract
      
      
        ="WCFServer.IMyService"
      
      
        />
      
      
        <
      
      
        endpoint 
      
      
        address
      
      
        ="MEX"
      
      
        

                  binding
      
      
        ="mexTcpBinding"
      
      
        

                  contract
      
      
        ="IMetadataExchange"
      
      
        />
      
      
        </
      
      
        service
      
      
        >
      
      
        </
      
      
        services
      
      
        >
      
      
        <
      
      
        behaviors
      
      
        >
      
      
        <
      
      
        serviceBehaviors
      
      
        >
      
      
        <
      
      
        behavior 
      
      
        name
      
      
        ="MEX"
      
      
        >
      
      
        <
      
      
        serviceMetadata
      
      
        />
      
      
        </
      
      
        behavior
      
      
        >
      
      
        </
      
      
        serviceBehaviors
      
      
        >
      
      
        </
      
      
        behaviors
      
      
        >
      
      
        </
      
      
        system.serviceModel
      
      
        >
      
      
        </
      
      
        configuration
      
      
        >
        


  • ?標準終結點

WCF提供了幾個預定義的服務終結點,即標準終結點,配置如下

      
        <?
      
      
        xml version="1.0" encoding="utf-8" 
      
      
        ?>
      
      
        <
      
      
        configuration
      
      
        >
      
      
        <
      
      
        system.serviceModel
      
      
        >
      
      
        <
      
      
        services
      
      
        >
      
      
        <
      
      
        service 
      
      
        name
      
      
        ="WCFServer.MyService"
      
      
         behaviorConfiguration
      
      
        ="MEX"
      
      
        >
      
      
        <
      
      
        host
      
      
        >
      
      
        <
      
      
        baseAddresses
      
      
        >
      
      
        <
      
      
        add 
      
      
        baseAddress
      
      
        ="net.tcp://localhost:5566/"
      
      
        />
      
      
        </
      
      
        baseAddresses
      
      
        >
      
      
        </
      
      
        host
      
      
        >
      
      
        <
      
      
        endpoint 
      
      
        address
      
      
        ="HelloWorld"
      
      
        

                  binding
      
      
        ="netTcpBinding"
      
      
        

                  contract
      
      
        ="WCFServer.IMyService"
      
      
        />
      
      
        <
      
      
        endpoint 
      
      
        address
      
      
        ="MEX"
      
      
        

                  binding
      
      
        ="mexTcpBinding"
      
      
        

                  kind
      
      
        ="mexEndpoint"
      
      
        />
      
      
        </
      
      
        service
      
      
        >
      
      
        </
      
      
        services
      
      
        >
      
      
        <
      
      
        behaviors
      
      
        >
      
      
        <
      
      
        serviceBehaviors
      
      
        >
      
      
        <
      
      
        behavior 
      
      
        name
      
      
        ="MEX"
      
      
        >
      
      
        <
      
      
        serviceMetadata
      
      
        />
      
      
        </
      
      
        behavior
      
      
        >
      
      
        </
      
      
        serviceBehaviors
      
      
        >
      
      
        </
      
      
        behaviors
      
      
        >
      
      
        </
      
      
        system.serviceModel
      
      
        >
      
      
        </
      
      
        configuration
      
      
        >
      
    

?

元數據終結點


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久久久久全国免费观看 | 国产裸体bbb视频 | 亚洲视频免费观看 | 亚洲精品a级 | 日本一级特黄视频 | 成人国产欧美精品一区二区 | 国产精品人妻无码久久久2022 | 久久一二区 | 国内精品久久久久久99蜜桃 | 特黄a大片免费视频 | 黄色影片在线免费观看 | 亚洲精品国偷拍自产在线观看蜜桃 | 日本一区二区不卡 | 成人午夜免费福利视频 | 色两性午夜视频免费观看 | 亚洲欧美电影 | 亚洲精品久久久 | 国产精品成人av | 久久久久av | 成在线人免费视频一区二区三区 | 婷婷人人爽人人做人人添 | 逼逼网 | 在线一区观看 | 青草在线观看 | 一区二区三区四区视频 | 美女下面被cao出水 玖玖玖影院 | 狠狠影视 | 亚洲精品中文字幕乱码一区二区 | 超级碰在线视频 | 国产亚洲福利 | 亚洲午夜在线 | 国产男女爽爽爽免费视频 | 国产色司机在线视频免费观看 | 国产永久福利 | 亚洲午夜精品A片久久WWW软件 | 九色九色九色在线综合888 | 免费一区| 精品福利视频一区二区三区 | 欧美精品第二页 | 国产色产综合色产在线观看视频 | 一级视频在线免费观看 |