Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
OnSendMailError Method

CreateUserWizard.OnSendMailError Method

Raises the SendMailError event when e-mail cannot be sent to the new user.

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

protected virtual void OnSendMailError(
	SendMailErrorEventArgs e

The OnSendMailError method is called when the SMTP mail system raises an exception while attempting to send e-mail to the new user.

Examine the Exception property of the SendMailErrorEventArgs object passed as the e parameter to determine the actual cause of the exception. The most common problem is a configuration error in the <smtpMail> section of the Web.config file.

You must set the Handled property of the SendMailErrorEventArgs object passed as the e parameter to signal that the exception that caused the OnSendMailError method to be called has been taken care of, otherwise the exception is re-thrown.

Raising an event invokes the event handler through a delegate. For more information, see Handling and Raising Events.

The OnSendMailError method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.

Notes to Inheritors

When overriding OnSendMailError in a derived class, be sure to call the base class’s OnSendMailError method so that registered delegates receive the event.

The following code example defines a custom CreateUserWizard object that logs e-mail errors to a site-specific logging function.

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 e-mail errors goes here.

    protected override void OnSendMailError (SendMailErrorEventArgs e)
      this.SiteSpecificErrorLoggingProcedure (e);
      e.Handled = true;

The following code example demonstrates a Web page that uses the CustomCreateUserWizard.

<%@ Page Language="C#"%>
<%@ Import namespace="Samples.AspNet.CS.Controls" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<script runat="server">
  void Page_Load (object sender, EventArgs e)
    CustomCreateUserWizard createUser = new CustomCreateUserWizard ();
    Placeholder1.Controls.Add (createUser);

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>CreateUserWizard.OnSendMailError sample</title>
    <form id="form1" runat="server">
      <asp:placeholder id="Placeholder1" runat="server">

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0
© 2015 Microsoft