0

Notre personnel informatique veut supprimer l'accès SMTP de la couche du site Web et envoyer tous les courriels du site Web en effectuant un appel de service Web à un service interne qui enverra ensuite l'e-mail directement via un serveur Exchange.Les contrôles d'appartenance asp.net (PasswordRecovery, CreateUserWizard) peuvent-ils être configurés pour fonctionner sans serveur SMTP?

Y at-il un moyen de configurer les contrôles PasswordRecovery et CreateUserWizard pour me laisser envoyer l'email directement (en appelant le service) au lieu de l'envoyer automatiquement en utilisant les paramètres SMTP configurés dans le web.config?

Je ne veux pas réécrire les pages et utiliser l'API directement si je peux simplement configurer les contrôles pour qu'ils fonctionnent comme ils sont. Sinon, je pense que je devrai supprimer le PasswordRecovery et CreateUserWizard et les remplacer par mes propres contrôles qui appellent l'API Membership.

Répondre

1

J'ai découvert que CreateUserWizard a un événement, OnSendingMail, auquel vous pouvez vous abonner. Si vous définissez MailMessageEventArgs e.Cancel = true, l'e-mail ne sera pas envoyé par le contrôle mais n'annule pas le flux de travail de l'assistant. J'annule donc l'e-mail et je l'envoie ici sans avoir à réécrire quoi que ce soit.

PasswordRecovery Je devais finir par réécrire. Juste utilisé l'API d'adhésion pour obtenir le MembershipUser, appelez ResetPassword(), et envoyez l'email avec le nouveau mot de passe directement.