示例#1
0
        public ErrorHandler(
            IEnumerable <IErrorFilter> errorFilters,
            IErrorHandlerOptionsAccessor options)
        {
            if (errorFilters == null)
            {
                throw new ArgumentNullException(nameof(errorFilters));
            }

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

            _filters = errorFilters.ToArray();
            _includeExceptionDetails = options.IncludeExceptionDetails;
        }
示例#2
0
        public static IQueryExecutionBuilder AddErrorHandler(
            this IQueryExecutionBuilder builder,
            IErrorHandlerOptionsAccessor options)
        {
            if (options == null)
            {
                throw new ArgumentNullException(nameof(options));
            }

            builder
            .RemoveService <IErrorHandler>()
            .RemoveService <IErrorHandlerOptionsAccessor>();
            builder.Services
            .AddSingleton <IErrorHandler, ErrorHandler>()
            .AddSingleton(options);

            return(builder);
        }