public Result <MessageDTO> Send(MessageDTO messageDTO) { var result = new Result(); Message message = _mapper.Map <Message>(messageDTO); try { _messageRepository.Add(message); foreach (int i in messageDTO.Recipients) { _messageRepository.AddRecipient(new MessageRecipient { MessageId = message.Id, UserId = i, Status = 0 }); } _messageRepository.SaveChanges(); result.Success = true; } catch (Exception e) { result.Success = false; var error = new ErrorMessage("dbcontext", e.Message); result.Errors = new List <ErrorMessage>() { error }; } //messageDTO = _mapper.Map<MessageDTO>(message); -- w ten sposób otrzymujemy obiekt zgodny ze stanem bazy danych, ale z Recipients==null; messageDTO.TimeModified = message.TimeModified; if (result.Success) { return(Result.Ok <MessageDTO>(messageDTO)); } else { return(Result.Failure <MessageDTO>(result.Errors)); } }