Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Controller api chamando o método de outra

Tenho duas controller em uma mesma api, uma delas precisa usar uma implementação já existente em na outra. Como chamar?

Ex: A UserController precisa enviar um email de confirmação ao criar um usuário, mas o ConfirmEmailController já possui essa implementação, como usar a implementação de "ConfirmEmailController " em UsuariosController?

public class ConfirmEmailController : ControllerBase
{
        [HttpPost]
        private async Task EnviarEmailDeConfirmacaoAsync(ApplicationUser usuario)
        {....}
}
 public class UsuariosController : Controller
 {
        [HttpPost]
        public async Task<IActionResult> PostAsync([FromBody]UserCreateModelApi usuario)
        {
        }
 }

Att,

Eduardo G. Santos

1 resposta
solução!

Eduardo, boa tarde.

Sugiro que você desacople o código de envio de email do seu controller para que seja possível utilizá-lo onde quiser.

Nesse exemplo email é um serviço que pode ser injetado em vários locais de sua aplicação e usado adequadamente.

Em outras situações utilizamos o RedirectToAction().

Espero ter ajudado.

Abraços!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software