private HttpError Populate(DataNotFoundException exception, out HttpStatusCode statusCode) { var httpError = this.Populate(exception as UserMessageException, out statusCode); httpError["ErrorType"] = "notfound"; httpError.Message = exception.Message; statusCode = HttpStatusCode.NotFound; return(httpError); }
public static ApiErrorDetails ToErrorDetails(this DataNotFoundException exception) { return(new ApiErrorDetails { Type = exception.GetType().Name, StatusCode = HttpStatusCode.NotFound, Title = exception.Message, Details = exception.StackTrace }); }
public void DataNotFoundException_InputIsGood_ShouldUseIdInMessage() { //Assemble var expected = 7; //Act var exception = new DataNotFoundException <Artifact>(expected); //Assert exception.Message.Should().Contain($"with id {expected}"); }
/// <summary> /// Obtiene un <see cref="ServiceResult"/> que representa un /// <see cref="ServiceResult"/> fallido a partir de la excepción /// producida. /// </summary> /// <param name="ex">Excepción que se ha producido.</param> /// <returns> /// Un resultado que representa y describe una falla en la /// operación solicitada. /// </returns> protected static ServiceResult ResultFromException(Exception ex) { return(ex switch { null => throw new ArgumentNullException(nameof(ex)), DataNotFoundException _ => NotFound, TaskCanceledException _ => NetworkFailure, DbUpdateConcurrencyException _ => ConcurrencyFailure, DbUpdateException _ => DbFailure, RetryLimitExceededException _ => NetworkFailure, _ => ex, });