【问题标题】:Setting the detail field of a `FaultException` without object serialization在没有对象序列化的情况下设置“FaultException”的详细信息字段
【发布时间】:2010-06-24 05:38:33
【问题描述】:

我正在尝试将最初为 WSE 编写的框架调整为 WCF。框架有时会从其内部深处抛出SoapExceptions,我想将其捕获并转换为WCF 框架将处理的FaultException 对象。

为了让该框架的现有客户端继续工作,我需要 SOAP 错误消息的 <detail> 字段准确SoapException.Detail 字段中的内容,但我可以' t 找到一种方法来实现这一点。 MSDN 上的所有文档都适用于使用序列化的详细信息对象,这对我不起作用。有什么方法可以将SoapException 强制转换为FaultExceptionFaultException<T> 对象,以保留原始soap 异常中的actor、code 和detail 字段?

【问题讨论】:

    标签: c# wcf exception soap fault


    【解决方案1】:

    是的,当然,但我不确定 - 根据您的问题 - 您是否针对您的情况探索并消除了此选项。

    您可以使用自定义 WCF 错误处理程序并将故障异常的 Detail 字段设置为您想要的任何内容,而无需在分配过程中涉及任何序列化或反序列化(在 HandleFault 或 ProvideFault 方法中)。请参阅 http://wcfpro.wordpress.com/2010/11/18/wcf-extensions-error-handler/http://wcfpro.wordpress.com/2011/01/04/catching-the-real-exception/http://blogs.msdn.com/b/pedram/archive/2008/01/25/wcf-error-handling-and-some-best-practices.aspx 来执行此操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-05
      • 1970-01-01
      • 2016-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多