public SuggestionsController(ISuggestionReader reader, IMediator mediator, IMapper mapper, ISuggestionHalService halService) { _reader = reader; _mediator = mediator; _mapper = mapper; _halService = halService; }
/// TODO : simplify this part by finding a way to resolve dependencies in automapper profile public static SuggestionHalResponse Map(SuggestionDto suggestion, ISuggestionHalService suggestionHalService) { var mapper = new MapperConfiguration(configuration => configuration .CreateMap <SuggestionDto, SuggestionHalResponse>() .Ignore(suggestion => suggestion.Comments) .AfterMap((dto, suggestionHalResponse) => { suggestionHalResponse.Comments = suggestion.Comments.Select(comment => suggestionHalService.AddLinks(comment, suggestion.Id)).ToList(); }) ).CreateMapper(); var suggestionHalResponse = mapper.Map <SuggestionHalResponse>(suggestion); return(suggestionHalResponse); }