日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
WCF通道形狀相關內(nèi)容深度剖析

WCF開發(fā)插件的應用在一定程度上大大提高了開發(fā)人員的開發(fā)效率,尤其是在通信方面的操作,提供了一個簡單的操作方法。在這里我們將會針對WCF通道形狀的相關內(nèi)容,為大家詳細講解這方面的知識。#t#

WCF通道形狀是我們對通道進行分類的重要依據(jù)之一。概念上,一個通道形狀對應于一個或多個消息交換模式(MEPs)。為了說明問題,考慮一下發(fā)送者和接收者使用請求/應答模式來交換消息的情況。在請求/應答模式里,發(fā)送者發(fā)送消息給接收者,接收者回復消息給發(fā)送者,請求消息和應答消息之間的關系是固定的。因為通道是發(fā)送者和接收者交換消息的物理途徑,發(fā)送者和接收者必須建立它們自己的通道。當發(fā)送者和接收者通過請求/應答模式來交換消息的時候,發(fā)送者和接收者必須理解請求/應答模式的規(guī)則。在結(jié)構上來說,這意味著發(fā)送者上的通道要定義發(fā)送消息和接收消息的成員。此外,發(fā)送者和接收者需要定義關聯(lián)請求消息和應答消息的成員。

咋一看,發(fā)送者和接收者有著相同的角色。例如,發(fā)送者和接收者都可以發(fā)送和接收消息。邏輯上的區(qū)別就是發(fā)送和接收消息過程中的順序不同。這意味著發(fā)送者和接收者上的通道會略有不同。這些不同點體現(xiàn)在發(fā)送者和接收者通道里定義的成員上。WCF通道形狀是我們命名和劃分這些不同點的方式。因為.NET接口是鑒別.NET類型成員的天然方式,所以它們也是區(qū)別通道形狀的最佳方式。

WCF類型系統(tǒng)定義了幾個描述不同WCF通道形狀的接口,這些接口與消息交換模式一一對應。消息交換模式(MEP)、發(fā)送者和接受之間的對應關系。這些接口都定義在System.ServiceModel.Channels命名空間下。

實際上,消息程序需要把多個消息關聯(lián)到一起。例如,一個交易系統(tǒng)(發(fā)送者)也許要發(fā)送關于一個交易訂單或者產(chǎn)品的多個消息到財務系統(tǒng)(接收者)。這個關聯(lián)的邏輯邊界就是會話(session)。當?shù)谝淮慰紤]這些會話的時候,很容易理解為接收者會根據(jù)發(fā)送者來關聯(lián)這些消息。這樣一來,很自然地就會猜想,同時處理5個發(fā)送者請求的接收者將會把消息關聯(lián)到一個特定的發(fā)送者上,正像ASP.NET程序處理來自于多個瀏覽器的請求消息一樣。在WCF應用程序里,這些耦合過于緊密以至于不能滿足過多的消息需求。例如,一個交易系統(tǒng)(發(fā)送者)或許發(fā)送多個訂單有關的消息,財務系統(tǒng)(接收者)也許要根據(jù)需訂單實例而不是交易系統(tǒng)(發(fā)送者)來關聯(lián)這些消息。

WCF會話是一個通道級別的構造。因為這個概念也就是為了關聯(lián)消息,每個通道都自己關聯(lián)消息的方式。例如,TCP/IP通道能夠根據(jù)接收消息的socket來關聯(lián)同一個會話里的消息。與之相對的是,實現(xiàn)了WS-ReliableMessaging規(guī)范的通道,可以在消息頭里使用ID屬性來關聯(lián)同一個會話里的消息,所以,這也就不需要依賴具體的socket或者傳輸結(jié)構了,就可以實現(xiàn)同一個會話里消息的關聯(lián)。

所有支持會話的通道的一個共同特性就是它們可以擁有自己的標識符,WCF基礎結(jié)構里的不同模塊都可以使用這個標識符來關聯(lián)消息。概念上看,通道需要實現(xiàn)System.ServiceModel.Channels.ISessionChannel接口來會支持會話。ISessionChannel的泛型參數(shù)必須實現(xiàn)System.ServiceModel.Channels.ISession接口。下面代碼展示了這些接口里的成員:

 
 
 
  1. public interface ISession {  
  2. String Id { get; }  
  3. }  
  4. public interface ISessionChannel where T: ISession {  
  5. T Session { get; }  

如代碼所示,接口暴露了一個名為Id的成員,這個成員表示一個會話標識符。在WCF里,實現(xiàn)了ISessionChannel接口的通道類型被稱為會話通道。為了連貫性考慮,WCF里把會話作為通道形狀的一個變量考慮。換句話說,IDuplexChannel接口包含一個名為IDuplexSessionChannel的變量。從WCF通道形狀的角度來看,IDuplexSessionChannel與IDuplexChannel的通道形狀不同,盡管它們都能夠?qū)崿F(xiàn)雙工通信。兩者真正的區(qū)別在于IDuplexSessionChannel實現(xiàn)了ISessionChannel接口。表6-3列舉了WCF類型系統(tǒng)里的會話通道形狀.


當前名稱:WCF通道形狀相關內(nèi)容深度剖析
當前路徑:http://m.5511xx.com/article/djoejhd.html