自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

WCF消息編碼器相關(guān)應(yīng)用代碼解讀

開發(fā) 開發(fā)工具
WCF消息編碼器在實(shí)際程序開發(fā)中起著非常重要的作用。我們可以通過本文介紹的相關(guān)內(nèi)容,能夠充分掌握這一應(yīng)用技巧。

WCF作為一個(gè)功能強(qiáng)大的.NET Framework 3.5重要組成部件,承擔(dān)者包括通信在內(nèi)容的多項(xiàng)功能的實(shí)現(xiàn)。其中,WCF消息編碼器通過類型MessageEncoder表示,MessageEncoder是定義在System.ServiceModel.Channels命名空間下的一個(gè)抽象類。

從下面的定義中可以看出,MessageEncoder主要包含兩種類型的操作:讀消息和寫消息,分別通過ReaderMessage和WriteMessage方法實(shí)現(xiàn)。此外,兩個(gè)額外的方法,GetProperty<T>用于獲取MessageEncoder相關(guān)的一些屬性,IsContentTypeSupported用于判斷MessageEncoder是否支持某種類型的MIME類型。

  1. public abstract class MessageEncoder   
  2. {   
  3. //其他成員   
  4. public virtual T GetProperty<T>() where T : class;   
  5. public virtual bool IsContentTypeSupported(string contentType);   
  6. public Message ReadMessage(ArraySegment<byte> buffer, 
    BufferManager bufferManager);   
  7. public Message ReadMessage(Stream stream, int maxSizeOfHeaders);   
  8. public abstract Message ReadMessage(ArraySegment<byte> buffer,
     BufferManager bufferManager, string contentType);   
  9. public abstract Message ReadMessage(Stream stream, 
    int maxSizeOfHeaders, string contentType);   
  10. public abstract void WriteMessage(Message message, Stream stream);   
  11. public ArraySegment<byte> WriteMessage(Message message, 
    int maxMessageSize, BufferManager bufferManager);   
  12. public abstract ArraySegment<byte> WriteMessage(Message message, 
    int maxMessageSize, BufferManager bufferManager, int messageOffset);   
  13. public abstract string ContentType { get; }   
  14. public abstract string MediaType { get; }   
  15. public abstract MessageVersion MessageVersion { get; }   

與上面介紹的3種類型的XmlDictionaryWriter/XmlDictionaryReader相對應(yīng),WCF消息編碼器同樣定義了MessageEncoder:TextMessageEncoder、BinaryMessageEncoder和MtomMessageEncoder三種MessageEncoder,它們分別封裝了XmlUTF8TextWriter/XmlUTF8TextReader、XmlBinaryWriter/XmlBinaryReader和XmlMtomWriter/XmlMtomReader。

WCF定義了3個(gè)相應(yīng)的工廠類:TextMessageEncoderFactory、BinaryMessageEncoderFactory和MtomMessageEncoderFactory用于創(chuàng)建相應(yīng)的MessageEncoder。它們共同繼承一個(gè)抽象類:System.ServiceModel.Channels.MessageEncoderFactory。通過只讀屬性Encoder得到相應(yīng)的MessageEncoder。

  1. public abstract class MessageEncoderFactory   
  2. {   
  3. //其他成員   
  4. public abstract MessageEncoder Encoder { get; }   

以上就是我們?yōu)榇蠹医榻B的WCF消息編碼器相關(guān)內(nèi)容。

【編輯推薦】

  1. WCF通道形狀相關(guān)內(nèi)容深度剖析
  2. LitwareHR使用WCF正確實(shí)現(xiàn)方法詳解
  3. WCF接口方法如何進(jìn)行正確調(diào)用
  4. WCF Stream實(shí)際應(yīng)用功能體驗(yàn)
  5. WCF行為擴(kuò)展正確內(nèi)容應(yīng)用技巧分享
責(zé)任編輯:曹凱 來源: CSDN
相關(guān)推薦

2010-03-01 14:08:53

WCF編碼器

2025-04-07 03:30:00

2010-03-02 14:41:00

WCF行為控制

2010-03-01 09:19:10

WCF編碼規(guī)范

2010-05-07 16:15:46

Windows Med

2021-03-22 10:52:13

人工智能深度學(xué)習(xí)自編碼器

2021-03-29 11:37:50

人工智能深度學(xué)習(xí)

2021-11-02 20:44:47

數(shù)字化

2012-04-01 16:40:45

編碼器

2025-04-10 06:30:00

2025-04-10 11:52:55

2012-04-10 16:55:22

PowerSmart編碼器

2023-04-25 21:36:07

火山引擎

2010-03-02 18:01:07

WCF自定義消息篩選器

2010-02-25 17:57:26

WCF服務(wù)合同

2009-12-21 13:37:43

WCF消息交換

2010-02-24 09:38:58

WCF應(yīng)用編碼

2010-02-25 13:40:17

WCF禁用安全配置

2010-02-25 09:50:30

WCF路由截獲消息
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號