【问题标题】:Sync Framework exception handling as WCF faults同步框架异常处理为 WCF 错误
【发布时间】:2011-10-12 18:56:37
【问题描述】:

我正在使用 WCF 和 Sync Framework 在 SQL 2008 和 SQL Ce 3.5 之间同步数据。如果服务器出现问题,我只想将格式正确的自定义错误发送回客户端。但是,我遇到的问题是当同步框架方法之一是错误的来源时,我的错误被包装在一个通用的“调用目标引发的异常”中,并以自定义错误作为内部错误返回给客户端例外。因此,客户端必须将错误捕获为通用异常,然后处理内部异常。

我怎样才能去掉包装异常,只向我的服务使用者显示真正的错误?

【问题讨论】:

    标签: wcf microsoft-sync-framework


    【解决方案1】:

    连接一个自定义 IErrorHandler 来进行异常翻译。

    【讨论】:

    • 在显式调用的 WCF 方法中出现的错误以向客户端返回格式正确的自定义错误,我没有遇到任何问题。问题在于从 Sync Framework 中调用的那些 WCF 方法。同步框架在 WCF 错误处理程序代码执行后重新抛出我的错误,因此客户端只能看到包含在重新抛出错误中的错误。这是我试图避免的行为。
    • 您可能需要挂钩到 MSF 事件以捕获异常并在 MSF 中以不同方式处理它。您可以设置一些配置,让 MSF 输出跟踪记录,以帮助您识别问题。
    • Rory,感谢您的评论,这很有帮助。最后,我能够在 SyncAgent 中包装对 Synchronize 的调用,并去掉 FaultException 并仅将其引发到客户端应用程序。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-07
    • 2016-05-22
    • 2021-11-15
    • 1970-01-01
    • 1970-01-01
    • 2012-10-27
    相关资源
    最近更新 更多