[爱心链接:拯救一个25岁身患急性白血病的女孩[内有苏州电视台经济频道《天天山海经》为此录制的节目视频(苏州话)]]通过上篇的介绍,我们知道了WCF所有与编码与解码相关的功能都实现在相应的System.Xml.XmlDictionaryWriterSystem.Xml.XmlDictionaryReader中。但是在真正的WCF处理框架中,却并不直接使用XmlDictioanryWriter和XmlDictionaryReader对象,而通过相应的消息编码器(System.ServiceModel.Channels.MessageEncoder)对其进行进一步封装,专门用于消息的编码和解码。

一、消息编码器(MessageEncoder)

消息编码器通过类型MessageEncoder表示,MessageEncoder是定义在System.ServiceModel.Channels命名空间下的一个抽象类。从下面的定义中可以看出,MessageEncoder主要包含两种类型的操作:读消息和写消息,分别通过ReaderMessage和WriteMessage方法实现。此外,两个额外的方法,GetProperty<T>用于获取MessageEncoder相关的一些属性,IsContentTypeSupported用于判断MessageEncoder是否支持某种类型的MIME类型。

class MessageEncoder
   2: {
//其他成员
class;
string contentType);
   6:  
byte> buffer, BufferManager bufferManager);
int maxSizeOfHeaders);
string contentType);
string contentType);
  11:  
void WriteMessage(Message message, Stream stream);
int maxMessageSize, BufferManager bufferManager);
int messageOffset);
  15:  
string ContentType { get; }
string MediaType { get; }
abstract MessageVersion MessageVersion { get; }
  19: }

相关文章:

  • 2021-07-25
  • 2021-03-31
  • 2022-12-23
  • 2021-11-16
  • 2021-12-16
  • 2021-12-09
猜你喜欢
  • 2022-01-05
  • 2021-11-07
  • 2021-11-10
  • 2021-11-20
  • 2021-12-31
  • 2021-09-18
相关资源
相似解决方案