Skip to content

JsonExceptionFilterAttribute

Rico Suter edited this page Sep 30, 2016 · 6 revisions
  • Package: NSwag.AspNet.WebApi or NSwag.AspNetCore

Usually, Web API does not fully serialize thrown exceptions (the inheritance hierarchy, stack trace and inner exceptions are missing). This is why this project provides a Web API filter which takes over the serialization process of exceptions.

Just register the filter in your Web API project. The following sample shows how to register the filter for all Web API actions.

Global.asax and OWIN

Add the custom filter to the HttpConfiguration object in your Startup.cs...

public void Configuration(IAppBuilder app)
{
    var config = new HttpConfiguration();
    config.Filters.Add(new JsonExceptionFilterAttribute());

... or Application_Start() method:

protected void Application_Start()
{
    GlobalConfiguration.Configuration.Filters.Add(new JsonExceptionFilterAttribute());
    ...

ASP.NET Core

public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc(options =>
        {
            options.Filters.Add(new JsonExceptionFilterAttribute());
        });
    }