public void OnActionExecuting(ActionExecutingContext context) { if (context.ModelState.IsValid) { return; } var issues = new Dictionary <string, string[]>(); foreach (var modelState in context.ModelState) { if (modelState.Value.Errors.Count > 0) { issues[modelState.Key] = modelState.Value.Errors.Select(GetValidationMessage).ToArray(); } } var resultDto = new ErrorResultDto { Error = Messages.ValidationError, Issues = issues }; context.Result = new BadRequestObjectResult(resultDto); }
public void OnActionExecuting(ActionExecutingContext filterContext) { foreach (KeyValuePair <string, object> actionArgumentsValue in filterContext.ActionArguments) { if (actionArgumentsValue.Value == null) { filterContext.ModelState.AddModelError(actionArgumentsValue.Key, Messages.NullParameterError); } } if (filterContext.ModelState.IsValid) { return; } var issues = filterContext.ModelState. ToDictionary(x => x.Key, x => x.Value.Errors.Select(GetValidationMessage).ToArray()); var resultDto = new ErrorResultDto { Error = Messages.ValidationError, Issues = issues }; filterContext.Result = new BadRequestObjectResult(resultDto); }
public static GenericExecResult <string> FromErrorResultToGenericExecResult(ErrorResultDto errorResult) { return(new GenericExecResult <string>() { Message = string.Format("{0},代码:{1}", errorResult.errmsg, errorResult.errcode), Success = false }); }
public override void OnException(ExceptionContext context) { var stackTrace = hostingEnvironment.IsDevelopment() ? context.Exception.ToString() : null; var friendlyErrorMessage = new ErrorResultDto { StackTrace = stackTrace, Error = Messages.InternalServerError }; context.Result = new ObjectResult(friendlyErrorMessage) { StatusCode = (int?)HttpStatusCode.InternalServerError }; }
private ActionResult HandleFailure(IResult result) { var errorResultDto = new ErrorResultDto { Error = result.Error }; switch (result.Code) { case ResultCode.NotFound: return(NotFound(errorResultDto)); default: return(BadRequest(errorResultDto)); } }
private async void Button_Clicked(object sender, EventArgs e) { var scanner = new MobileBarcodeScanner(); var result = await scanner.Scan(); if (result != null) { string barcode = result.Text; IProductApi api = new ProductApi("http://192.168.1.100:5000"); try { ProductInformationDto dto = await api.GetByBarcodeAsync(barcode); ProductName.Text = dto.Name; } catch (ApiException ex) { string message; ErrorResultDto errorDto = JsonConvert.DeserializeObject <ErrorResultDto>(ex.ErrorContent.ToString()); switch (errorDto.ErrorCode) { case ErrorResultDto.ErrorCodeEnum.GenericError: message = "A szerver nem tudta feldolgozni a kérést"; break; case ErrorResultDto.ErrorCodeEnum.ProductNotFound: message = "Nincs termék ezzel a vonalkóddal"; break; default: message = "Ismeretlen hiba történt"; break; } await DisplayAlert("Hiba", message, "Ok"); } catch (Exception) { await DisplayAlert("Hiba", "Ismeretlen hiba történt", "Ok"); } } }
public override void OnException(ExceptionContext context) { var exception = context.Exception; logger.LogError(exception, "Unhandled Exception"); var stackTrace = hostingEnvironment.IsDevelopment() ? exception.ToString() : null; var errorMessage = exception is ZekException ? exception.Message : Messages.InternalServerError; var friendlyErrorMessage = new ErrorResultDto { StackTrace = stackTrace, Error = errorMessage }; context.Result = new ObjectResult(friendlyErrorMessage) { StatusCode = (int?)HttpStatusCode.InternalServerError }; }
protected IActionResult As(Result result) { if (result.IsSuccess) { return(Ok()); } var errorResultDto = new ErrorResultDto { Error = result.Error }; switch (result.Code) { case ResultCode.NotFound: return(NotFound(errorResultDto)); case ResultCode.BadRequest: default: return(BadRequest(errorResultDto)); } }