如果在WCF REST调用中出现错误,比如没有找到请求的资源,我该如何处理OperationContract方法中的HTTP响应代码(例如,将其设置为HTTP404之类的代码)?
发布于 2008-09-26 15:16:30
有一个您可以访问的WebOperationContext
,它有一个OutgoingWebResponseContext
类型的OutgoingResponse
属性,该属性有一个可以设置的StatusCode
属性。
WebOperationContext ctx = WebOperationContext.Current;
ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.OK;
发布于 2010-11-24 19:44:28
如果您需要返回原因正文,那么可以查看WebFaultException
例如
throw new WebFaultException<string>("Bar wasn't Foo'd", HttpStatusCode.BadRequest );
发布于 2018-05-24 17:16:43
您还可以使用WebOperationContext的StatusCode和StatusDescription返回状态代码和原因正文
WebOperationContext context = WebOperationContext.Current;
context.OutgoingResponse.StatusCode = HttpStatusCode.OK;
context.OutgoingResponse.StatusDescription = "Your Message";
https://stackoverflow.com/questions/140104
复制相似问题