PasswordRecovery.OnSendingMail(MailMessageEventArgs) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Aciona o evento SendingMail.
protected:
virtual void OnSendingMail(System::Web::UI::WebControls::MailMessageEventArgs ^ e);
protected virtual void OnSendingMail (System.Web.UI.WebControls.MailMessageEventArgs e);
abstract member OnSendingMail : System.Web.UI.WebControls.MailMessageEventArgs -> unit
override this.OnSendingMail : System.Web.UI.WebControls.MailMessageEventArgs -> unit
Protected Overridable Sub OnSendingMail (e As MailMessageEventArgs)
Parâmetros
Um MailMessageEventArgs que contém os dados do evento.
Exemplos
O exemplo de código a seguir cria um controle personalizado PasswordRecovery que implementa o OnSendingMail método para definir propriedades da MailDefinition propriedade antes de enviar uma nova senha para um usuário do site.
<%@ page language="C#" %>
<%@ Import namespace="Samples.AspNet.CS.Controls" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Init(object sender, EventArgs e)
{
PasswordRecoveryOnBeforeSendingEmail passwordRecoveryControl =
new PasswordRecoveryOnBeforeSendingEmail();
passwordRecoveryControl.ID = "passwordRecoveryControl";
passwordRecoveryControl.MailDefinition.From = "userAdmin@your.site.name.here";
PlaceHolder1.Controls.Add(passwordRecoveryControl);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:placeholder id="PlaceHolder1" runat="server"></asp:placeholder>
</form>
</body>
</html>
<%@ page language="VB" %>
<%@ Import namespace="Samples.AspNet.VB.Controls" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs)
Dim passwordRecoveryControl As New PasswordRecoveryOnBeforeSendingEmail
passwordRecoveryControl.ID = "passwordRecoveryControl"
passwordRecoveryControl.MailDefinition.From = "userAdmin@your.site.name.here"
PlaceHolder1.Controls.Add(passwordRecoveryControl)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:placeholder id="PlaceHolder1" runat="server"></asp:placeholder>
</form>
</body>
</html>
Comentários
O OnSendingMail método é chamado depois que o provedor de associação verifica se o usuário é um membro válido do site e antes que a senha recuperada ou nova seja enviada por email para o usuário. A implementação padrão aciona o SendingMail evento.
A geração de um evento invoca o manipulador de eventos por meio de um delegado. Para obter mais informações, consulte Manipulando e gerando eventos.
O OnSendingMail método também permite que classes derivadas manipulem o evento sem anexar um delegado. Essa é a técnica preferencial para lidar com o evento em uma classe derivada.
Notas aos Herdeiros
Ao substituir OnSendingMail(MailMessageEventArgs) em uma classe derivada, chame o método da OnSendingMail(MailMessageEventArgs) classe base para que os delegados registrados recebam o evento.