我正在开发一个.net 3.5 REST WCF应用程序。 我发现WebFaultException是处理REST服务错误的最佳方法。 我似乎无法在.net 3.5中找到WebFaultException类。 它是在.net 4中引入的还是我错过了名称空间导入? 是否有解决方案在.net 3.5中实现WebFaultException行为? 感谢您的帮助。
答案 0 :(得分:1)
确实,WebFaultException
仅在.NET 4.0时间框架中引入。在此之前,您负责设置WebOperationContext.Current.OutgoingResponse
上的所有HTTP属性并自行处理故障控制流程,而不是依赖于抛出异常。
也就是说,您可以在3.5中创建自己的WebFaultException
类,然后实现一个WCF IErrorHandler
,它通常从您的自定义WebFaultException
类中检索HTTP信息并将它们传输到各种类别WebOperationContext.Current.OutgoingResponse
的属性,并在Message
实现中为正文创建ProvideFault
个实例(如果有)。