【发布时间】:2012-01-10 16:59:34
【问题描述】:
我有一个与我的 WCF 服务通信的类库。然后可以在我的任何应用程序中使用该类库。我很好奇处理错误的最佳实践是什么。我已经想到了两种情况,但想从社区中获得一些反馈。这个想法不仅是为了确保它适用于 .NET 解决方案,而且是任何其他可能不使用 dll 而是通过 SOAP 样式调用直接调用服务的语言。
选项 #1 创建一个返回给调用者 API 的结果对象。比如。
Public abstract BaseResponse
{
[DataMember]
Public bool IsSuccess { get; set;}
[DataMember]
Public string ErrorMsg { get ;set ;}
}
Public GetProductResponse : BaseResponse
{
[DataMember]
Public Product p { get;set;}
}
选项 #2:抛出 SOA 故障并允许最终用户按照他们的选择进行处理。我可以在我的 API 中处理它 - 但是直接调用服务将需要最终用户针对故障进行编码并正确处理它。
【问题讨论】:
-
什么是“SOA 故障”?您的意思是“SOAP 错误”吗?不想搞笑,因为“SOA”在这里是一个有意义的术语。
标签: wcf web-services exception