public static BaseApiResponse OperationImpossible(string message = null) { var response = new BaseApiResponse() { Message = "Operation is impossible", }; if (message != null) { response.AddError(message); } return(response); }
public static BaseApiResponse InternalServerError(string message = null) { var response = new BaseApiResponse() { Message = "Internal server error" }; if (message != null) { response.AddError(message); } return(response); }
public override void Handle(ExceptionHandlerContext context) { if (context.Exception is ValidationFailedException) { var ex = context.Exception as ValidationFailedException; if (context.ExceptionContext.ActionContext != null) { ModelStateDictionary modelState = context.ExceptionContext.ActionContext.ModelState; modelState.AddValidationErrors(ex.ValidationErrors); context.Result = new CustomHttpResult( context.Request, HttpStatusCode.BadRequest, BadRequestResponse.Create(modelState)); } else { context.Result = new CustomHttpResult( context.Request, HttpStatusCode.BadRequest, BadRequestResponse.Create(ex.ValidationErrors)); } } else if (context.Exception is EntityNotFoundException) { context.Result = new CustomHttpResult( context.Request, HttpStatusCode.NotFound, BaseApiResponse.NotFound(context.Request.RequestUri)); } else if (context.Exception is ResourceForbiddenException) { context.Result = new CustomHttpResult( context.Request, HttpStatusCode.Forbidden, BaseApiResponse.Forbidden()); } else { context.Result = new CustomHttpResult( context.Request, context.Exception is SecurityException ? HttpStatusCode.Unauthorized : HttpStatusCode.InternalServerError, BaseApiResponse.InternalServerError(context.Exception.Message)); } }
protected IHttpActionResult Conflict(string message) { return(new CustomHttpResult(Request, HttpStatusCode.Conflict, BaseApiResponse.OperationImpossible(message))); }
protected new IHttpActionResult NotFound() { return(new CustomHttpResult(Request, HttpStatusCode.NotFound, BaseApiResponse.NotFound(Request.RequestUri))); }
protected IHttpActionResult InternalServerError(BaseApiResponse response) { return(new CustomHttpResult(Request, HttpStatusCode.InternalServerError, response)); }