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);
        }
Exemple #2
0
 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}");
        }
Exemple #4
0
 /// <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,
     });