public async Task SendEmail(Email email)
        {
            var result = await _validator.ValidateAsync(email);

            if (!result.IsValid)
            {
                var validationMessage = _validationMessageFormatter.GetErrorMessage(result.Errors);
                throw new InvalidInputException(validationMessage);
            }

            try
            {
                await _smtpSender.Send(email);

                email.Success = true;
            }
            catch (Exception e)
            {
                _logger.LogError(e, "Error when sending email");
                email.Success = false;
            }

            await _emailsRepository.Create(email);
        }
Example #2
0
        public async Task <TblEmails> Create(TblEmails email)
        {
            email.DInicio = DateTime.Now;

            return(await _repository.Create(email));
        }