none
异常捕捉问题 RRS feed

  • 问题

  • 客户端-》请求-》服务端-》调客户端对应于服务器端的方法-》执行完成返回到服务器端-》返回到客户端

    不知道客户端异常这个时候由客户端还是服务器端抓取。我想客户端不做任何处理,全部有服务器端捕获异常。谢谢版主

    2011年3月3日 15:24

答案

  • 不可能全部做到。

    当:

    1 提交请求的时候发生网络错误、序列化错误、连接过程发生错误时;

    2 服务器处理超时以至于未能及时接收反馈信息时;

    3 接收反馈信息时发生网络错误、反序列化错误、连接被中途关闭时。

    均会导致客户端异常。无法被服务器代理处理。


    Eternal Snow
    • 已标记为答案 Mog Liang 2011年3月10日 7:39
    2011年3月4日 8:08

全部回复

    1. 从System.ServiceModel.Dispatcher.IErrorHandler派生一个类YourErrorHandler
    2. 自定义一个ErrorServiceBehaviorAttribute,把派生的YourErrorHandler应用到服务上
    3. [可选]再自定义一个BehaviorExtension,可以用配置文件把自定义的ErrorServiceBehavior行为应用于服务上

    代码示例参见这里:

    http://msdn.microsoft.com/zh-cn/library/system.servicemodel.dispatcher.ierrorhandler(v=VS.100).aspx

    2011年3月4日 2:31
  • 不可能全部做到。

    当:

    1 提交请求的时候发生网络错误、序列化错误、连接过程发生错误时;

    2 服务器处理超时以至于未能及时接收反馈信息时;

    3 接收反馈信息时发生网络错误、反序列化错误、连接被中途关闭时。

    均会导致客户端异常。无法被服务器代理处理。


    Eternal Snow
    • 已标记为答案 Mog Liang 2011年3月10日 7:39
    2011年3月4日 8:08