【发布时间】:2013-12-18 03:11:04
【问题描述】:
在 WCf 层发生任何异常的情况下,WCF 服务会发送故障异常,我在内部应用程序使用的 WCf 服务中广泛使用它,但我不确定外部客户端。
场景
假设我创建了一个 WCF 服务,该服务将通过 Internet 向我的客户公开,并且我将为每个服务调用收费。可能有不同的错误消息(身份验证失败/授权失败/验证错误)可以从服务返回
我正在考虑以下两种方法
Fault Exception: 创建一个实现 IErrorHandler 的 Generic ErrorHandler,为每种错误抛出 Fault 异常。然后客户端必须在他们的最后处理错误异常,在我看来有点复杂
响应 DTO: 响应 DTO 将包含填充错误详细信息的 IsError、ErrorMessage、ErrorCode 等属性。这对客户来说可能很容易,因为他们只会检查一些布尔变量来查找是否有任何错误。
所以这是问题
响应对象内的故障异常或错误消息是否应该从 WCF 发送?每种方法的优缺点是什么?
【问题讨论】:
-
我已经改写了这个问题,让我知道它是否符合指南
标签: c# wcf web-services exception-handling