public async Task <CreateUserResult> Handle(CreateUserCommand command, CancellationToken cancellationToken) { commandValidator.ValidateAndThrow(command); var user = mapper.Map <User>(command.User); await userRepository.AddOrUpdateAsync(user); await unitOfWork.SaveChangesAsync(); var request = new CreateEmailMessageRequest { Message = new EmailMessage { Subject = "Bem-vindo ao Landy!", From = "*****@*****.**", Tos = user.Email, Body = "Sua conta foi criada com sucesso." } }; var response = await emailClient.CreateEmailMessageAsync(request); Console.WriteLine($"Message Id: { response.Message.Id }"); var result = new CreateUserResult { User = mapper.Map <UserDto>(user) }; return(result); }
public override async Task <CreateEmailMessageResponse> CreateEmailMessage( CreateEmailMessageRequest request, ServerCallContext context) { var emailMessage = new EmailMessageDto() { From = request.Message.From, Tos = request.Message.Tos, CCs = request.Message.CCs, BCCs = request.Message.BCCs, Subject = request.Message.Subject, Body = request.Message.Body, }; var result = await mediator.Send(new CreateEmailMessageCommand(emailMessage)); var response = new CreateEmailMessageResponse { Message = new EmailMessage { Id = result.Message.Id.ToString() } }; return(response); }