我编写了一个供第三方使用的 WCF REST API。我想做的一件事是在出现任何问题时向客户返回自定义错误响应。我不希望 WCF 默认错误页面显示发生内部服务器错误或找不到方法名称。
为此,我WebFaultException<Error>
在必要时抛出。这会向客户端返回以下类型的响应:
<Error>
<type>MissingTag</type>
<Desc>Tag 349 is missing</Desc>
</Error>
但是,如果发生任何其他类型的错误,例如序列化错误或“找不到方法”错误或我想检查 POST、PUT 和 PATCH 是否存在 http 标头内容类型的地方,我该如何处理。我也想扔WebFaultException<>
那里。我试着调查IErrorHandler
但无法让它工作。
任何人都对如何实现这种事情有想法。我也可以有一个简单的代码来演示IErrorHandler
用法吗?