c# - WCF 服务 :Fault Exceptions vs Error Message in Response Object

标签 c# wcf web-services exception

<分区>

WCF 服务会在 WCf 层发生任何异常时发送故障异常,我一直在内部应用程序使用的 WCf 服务中广泛使用它,但我不确定外部客户端。

场景

Say i create a WCF service which is to be exposed to my clients over internet and I will be charging for each service call. There could be different error messages (Authentication Failed/Authorization failed/Validation Errors) which can be returned from Service

我正在考虑以下两种方法

故障异常:创建一个实现 IErrorHandler 的通用 ErrorHandler 以针对每种错误抛出故障异常。然后客户端将不得不在他们的最后处理错误异常,在我看来有点复杂

Response DTO: Response DTO 将具有 IsError、ErrorMessage、ErrorCode 等属性,其中填充了错误详细信息。这对客户来说可能很容易,因为他们只需检查一些 bool 变量以查找是否有任何错误。

问题来了

应该从 WCF 发送响应对象中的故障异常或错误消息吗?每种方法的优点/缺点是什么?

最佳答案

在我目前从事的项目中,我们正在开发一个可公开访问的 API。我们正在创建一个响应 DTO 以将预期的错误消息传递给自定义。然后我们将故障异常包裹在其他所有内容中,并使用客户标识符 (apikey) 记录错误。客户将收到没有实际细节的故障异常,但使用该客户 apikey 我们应该能够找到并解决特定问题。

关于c# - WCF 服务 :Fault Exceptions vs Error Message in Response Object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20327815/

相关文章:

c# - 构建 Visual Studio 项目时构建 SandcaSTLe 文档

C# Mongodb。分组后将 Json 投影为强类型

c# - 当线程使用调度程序并且主线程正在等待线程完成时出现死锁

c# - 从 Input.GetAxis() 读取时,transform.Translate 似乎加速和减速对象

c# - 通过 WCF 的 ObservableCollection

java - Apache CXF 中基于 WebSockets 的 SOAP?

c# - System.Net.Http.HttpClient 缓存行为

iphone - 从 Web 服务 4.0 返回 JSON

PHP Soap ssl 如何信任自签名证书

c# - HttpClient 和 Windows 身份验证 : Pass logged in User of Consumer to Service