【问题标题】:Retrieving Custom Exception from Asp.Net Web API to Postman从 Asp.Net Web API 检索自定义异常到 Postman
【发布时间】:2019-05-09 10:26:00
【问题描述】:

我们已经创建了自定义异常类,它有一些我们需要从 Web API 返回的信息。现在,当我们将数据返回给 Postman 时,自定义异常会被 Base Exception 类覆盖。

这是我们现在得到的输出:

而且,我们在邮递员中需要这些信息。

【问题讨论】:

    标签: exception asp.net-web-api2 postman


    【解决方案1】:

    我相信您在自定义类的实现中犯了错误。下面是自定义异常类的示例实现。

     public class APIExceptionFilter : ExceptionFilterAttribute
        {
                public override void OnException(HttpActionExecutedContext actionExecutedContext)
                   {
                         // Assign the status code that you want as output
                           HttpStatusCode status = HttpStatusCode.InternalServerError;
                           string messageToBeDisplayed = "TestMessage";
                           actionExecutedContext.Response = new HttpResponseMessage { StatusCode = status, Content = new StringContent( messageToBeDisplayed , System.Text.Encoding.UTF8) };
                           base.OnException(actionExecutedContext);
    
                   }
        }
    

    在您的“WebApiConfig”类和“Register”方法中,您需要添加如下所示的“APIExceptionFilter”过滤器,因为它将为所有请求注册它:

    public static class WebApiConfig
        {
            public static void Register(HttpConfiguration config)
            {
                  // Add this......
                  config.Filters.Add(new APIExceptionFilter());
            }
        }
    

    【讨论】:

    • @sumit 觉得有用请采纳
    猜你喜欢
    • 2019-11-10
    • 1970-01-01
    • 2012-09-19
    • 2019-04-27
    • 2013-02-14
    • 1970-01-01
    • 2012-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多