代码之家  ›  专栏  ›  技术社区  ›  dragonfly

如何获取wcf操作在运行时使用的数据序列化程序

  •  0
  • dragonfly  · 技术社区  · 16 年前

    是否有机会在运行时(例如使用操作行为)获取操作(DataContractSerializer/NetDataContractSerializer/XmlSerializer等)使用的数据协定序列化程序。我要实现的是创建一些诊断代码,这些代码将使用当前附加的序列化程序对消息(在消息检查器中)进行序列化以比较结果。

    谢谢,帕维尔

    1 回复  |  直到 16 年前
        1
  •  0
  •   Adam Fyles    16 年前

    看看在服务端创建一个消息检查器。从那里你可以抓取信息并检查它的编码器。编码器会告诉你它是如何序列化的。这不是有效的代码,但它会像这样: IDispatchMessageInspector.AfterReceiveRequest( ref Message request....){ if ( request.MessageEncoder is typeof(BinaryMessageEncoder) //do stuff.....}

    推荐文章