public static ActionResult JsonError(
            this Controller controller,
            string[] errorMessages,
            HttpStatusCode statusCode,
            Exception e     = null,
            object tempData = null)
        {
            var result = new ErrorsJsonResultModel
            {
                Status           = "error",
                Error            = errorMessages.FirstOrDefault(),
                Errors           = errorMessages,
                ExceptionMessage = e?.Message,
                TempData         = tempData
            };

            controller.Response.TrySkipIisCustomErrors = true;

            return(new CamelCasePropertyJsonResult
            {
                Data = result,
                JsonRequestBehavior = JsonRequestBehavior.AllowGet,
                StatusCode = statusCode
            });
        }
示例#2
0
        public static IHttpActionResult JsonError(
            this ApiController controller,
            string[] errorMessages,
            HttpStatusCode statusCode,
            Exception e     = null,
            object tempData = null)
        {
            var result = new ErrorsJsonResultModel
            {
                Status           = "error",
                Error            = errorMessages.FirstOrDefault(),
                Errors           = errorMessages,
                ExceptionMessage = e?.Message,
                TempData         = tempData
            };

            return(ResolveDependencies(
                       controller,
                       (negotiator, request, formatters) => new NegotiatedContentResult <ErrorsJsonResultModel>(
                           statusCode,
                           result,
                           negotiator,
                           request,
                           formatters)));
        }