public static IApplicationBuilder UseUmaExceptionHandler(
            this IApplicationBuilder applicationBuilder,
            ExceptionHandlerMiddlewareOptions options)
        {
            if (options == null)
            {
                throw new ArgumentNullException("options");
            }

            return(applicationBuilder.UseMiddleware <ExceptionHandlerMiddleware>(options));
        }
        public ExceptionHandlerMiddleware(RequestDelegate next, ExceptionHandlerMiddlewareOptions options)
        {
            if (next == null)
            {
                throw new ArgumentNullException(nameof(next));
            }

            if (options == null)
            {
                throw new ArgumentNullException(nameof(options));
            }

            _next    = next;
            _options = options;
        }