Nyelv

CreateUserWizard.OnSendMailError(SendMailErrorEventArgs) Metódus

Definíció

Akkor aktiválja az SendMailError eseményt, ha az e-mail nem küldhető el az új felhasználónak.

protected:
 virtual void OnSendMailError(System::Web::UI::WebControls::SendMailErrorEventArgs ^ e);
protected virtual void OnSendMailError(System.Web.UI.WebControls.SendMailErrorEventArgs e);
abstract member OnSendMailError : System.Web.UI.WebControls.SendMailErrorEventArgs -> unit
override this.OnSendMailError : System.Web.UI.WebControls.SendMailErrorEventArgs -> unit
Protected Overridable Sub OnSendMailError (e As SendMailErrorEventArgs)

Paraméterek

e
SendMailErrorEventArgs

Az SendMailErrorEventArgs eseményadatokat tartalmazó.

Példák

Az alábbi példakód egy egyéni CreateUserWizard objektumot határoz meg, amely naplózza az e-mail-hibákat egy helyspecifikus naplózási függvénynek.

using System;
using System.Web;
using System.Web.UI.WebControls;
using System.Security.Permissions;

namespace Samples.AspNet.CS.Controls {

  [AspNetHostingPermission (SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission (SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
  public class CustomCreateUserWizard : CreateUserWizard
  {
    private void SiteSpecificErrorLoggingProcedure (SendMailErrorEventArgs e)
    {
      // Site-specific code for logging email errors goes here.
    }

    protected override void OnSendMailError (SendMailErrorEventArgs e)
    {
      this.SiteSpecificErrorLoggingProcedure (e);
      e.Handled = true;
    }
  }
}
Imports System.Web
Imports System.Web.UI.WebControls
Imports System.Security.Permissions

Namespace Samples.AspNet.VB.Controls
  <AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public Class CustomCreateUserWizard
    Inherits CreateUserWizard

    Private Sub SiteSpecificErrorLoggingProcedure(ByVal e As SendMailErrorEventArgs)
      ' Site-specific code for logging email errors goes here.
    End Sub
    
    Overloads Sub OnSendMailError(ByVal e As SendMailErrorEventArgs)
      Me.SiteSpecificErrorLoggingProcedure(e)
      e.Handled = True
    End Sub
  End Class
End Namespace

Az alábbi példakód egy weblapot mutat be, amely a CustomCreateUserWizard.

<%@ 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_Load (object sender, EventArgs e)
  {
    CustomCreateUserWizard createUser = new CustomCreateUserWizard ();
    Placeholder1.Controls.Add (createUser);
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>CreateUserWizard.OnSendMailError sample</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:placeholder id="Placeholder1" runat="server">
      </asp:placeholder>
    </div>
    </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_Load(ByVal sender As Object, ByVal e As System.EventArgs)
    Dim createUser As New CustomCreateUserWizard
    Placeholder1.Controls.Add(createUser)
  End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>
      CreateUserWizard.OnSendMailError sample</title>
  </head>
  <body>
    <form id="form1" runat="server">
      <div>
        <asp:placeholder id="Placeholder1" runat="server">
        </asp:placeholder>
      </div>
    </form>
  </body>
</html>

Megjegyzések

A OnSendMailError metódus akkor lesz meghívva, ha az SMTP levelezőrendszer kivételt jelez, miközben e-mailt próbál küldeni az új felhasználónak.

Vizsgálja meg a ExceptionSendMailErrorEventArgs paraméterként e átadott objektum tulajdonságát a kivétel tényleges okának meghatározásához. A leggyakoribb probléma egy konfigurációs hiba a <smtpMail> Web.config fájl szakaszában.

A paraméterként Handled átadott objektum tulajdonságát SendMailErrorEventArgs úgy kell beállítaniae, hogy jelezhesse, hogy a OnSendMailError metódus meghívását okozó kivételt elhárították, ellenkező esetben a kivétel újra lesz vetve.

Az esemény létrehozása meghívja az eseménykezelőt egy meghatalmazotton keresztül. További információ: Események kezelése és emelése.

A OnSendMailError metódus lehetővé teszi továbbá, hogy a származtatott osztályok meghatalmazott csatolása nélkül kezeljék az eseményt. Ez az előnyben részesített módszer az esemény származtatott osztályban való kezelésére.

Megjegyzések az öröklőkhöz

Származtatott osztályban történő felülbíráláskor OnSendMailError(SendMailErrorEventArgs) mindenképpen hívja meg az alaposztály metódusát OnSendMailError(SendMailErrorEventArgs) , hogy a regisztrált meghatalmazottak megkapják az eseményt.

A következőre érvényes:

Lásd még