public async Task <IActionResult> ConfirmarReseteoContrasenia([FromBody] UsuarioRecuperarContraseniaViewModel model)
        {
            Usuario usuarioAResetearPassword = await _userManager.FindByEmailAsync(model.Correo);

            if (usuarioAResetearPassword != null)
            {
                var result = await _userManager.ResetPasswordAsync(usuarioAResetearPassword, model.TokenRecuperacion, model.ConfirmarContrasenia);

                if (result.Succeeded)
                {
                    return(Ok(new ApiResponseFormat()
                    {
                        Estado = StatusCodes.Status200OK, Mensaje = "Contrasenia modificada con exito, puede iniciar sesion con su nueva contrasenia"
                    }));
                }
                else
                {
                    return(BadRequest(new ApiResponseFormat()
                    {
                        Estado = StatusCodes.Status400BadRequest, Mensaje = "Ocurrio uno o varios errores al cambiar la contrasenia", Dato = result.Errors
                    }));
                }
            }

            return(BadRequest(new ApiResponseFormat()
            {
                Estado = StatusCodes.Status400BadRequest, Mensaje = "Correo invalido"
            }));
        }
        public async Task <ActionResult> RecuperarContrasenia([FromBody] UsuarioRecuperarContraseniaViewModel model)
        {
            Usuario usuarioARecuperarContrasenia = await _userManager.FindByEmailAsync(model.Correo);

            if (usuarioARecuperarContrasenia != null && usuarioARecuperarContrasenia.EmailConfirmed)
            {
                try
                {
                    await EnviarTokenContraseniaAsync(usuarioARecuperarContrasenia);

                    return(Ok(new ApiResponseFormat()
                    {
                        Estado = StatusCodes.Status200OK, Mensaje = "Se envio un enlace a su correo para recuperar su contrasenia."
                    }));
                }
                catch (Exception ex)
                {
                    return(BadRequest(new ApiResponseFormat()
                    {
                        Estado = StatusCodes.Status400BadRequest, Mensaje = ex.Message
                    }));
                }
            }

            return(BadRequest(new ApiResponseFormat()
            {
                Estado = StatusCodes.Status400BadRequest, Mensaje = "Para recuperar su contrasenia ingrese un correo valido y asegurese que halla sido confirmado"
            }));
        }