Esempio n. 1
0
        private static HttpStatusCode GetHttpStatusCode(DomainErrorCodes errorCodes)
        {
            switch (errorCodes)
            {
            case DomainErrorCodes.InvalidParameter:
            case DomainErrorCodes.StartDateAfterEndDate:
            case DomainErrorCodes.TripStartDateIsInThePast:
            case DomainErrorCodes.TooLongTrip:
            case DomainErrorCodes.TooShortTrip:
            case DomainErrorCodes.OverlappingTripDates:
            case DomainErrorCodes.ArgumentNullOrEmpty:
                return(HttpStatusCode.BadRequest);

            case DomainErrorCodes.CustomerAlreadyAssignedToThisTrip:
            case DomainErrorCodes.TripAlreadyExists:
            case DomainErrorCodes.CustomerAlreadyExists:
                return(HttpStatusCode.Conflict);

            case DomainErrorCodes.CustomerDoesNotExist:
            case DomainErrorCodes.TripDoesNotExists:
                return(HttpStatusCode.NotFound);

            default:
                throw new ArgumentOutOfRangeException(nameof(errorCodes), errorCodes, null);
            }
        }
Esempio n. 2
0
 public DomainException(DomainErrorCodes errorCode, Exception innerException, string description,
                        params object[] args) : base(FormatDescription(description, args))
 {
     ErrorCode   = errorCode;
     Description = FormatDescription(description, args);
 }