我有以下异常过滤器:
public class ServiceLayerExceptionFilter : ExceptionFilterAttribute
{
public override void OnException(HttpActionExecutedContext context)
{
if (context.Result == null)
{
context.Result = new HttpResponseMessage();
}
context.Result.StatusCode = context.Exception.ConvertToHttpStatus();
base.OnException(context);
}
}
我的 ConvertToHttpStatus() 只是一个扩展,它查找映射到 HttpStatusCodes 的异常类型的 Dictionary 对象。http 状态码正在正确转换。但是在响应负载中,我得到一个 IIS 错误页面。最好我想让响应为空,或者更好地将异常消息作为 json 传递。有谁知道我为什么返回 IIS 错误页面以及如何返回空内容或有效内容?