ChangePassword.MailDefinition Propriété

Définition

Obtient une référence à une collection de propriétés qui définissent l’e-mail envoyé aux utilisateurs après qu’ils ont modifié leur mot de passe.

public:
 property System::Web::UI::WebControls::MailDefinition ^ MailDefinition { System::Web::UI::WebControls::MailDefinition ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
[System.Web.UI.Themeable(false)]
public System.Web.UI.WebControls.MailDefinition MailDefinition { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
[<System.Web.UI.Themeable(false)>]
member this.MailDefinition : System.Web.UI.WebControls.MailDefinition
Public ReadOnly Property MailDefinition As MailDefinition

Valeur de propriété

Référence à un MailDefinition objet qui définit l’e-mail envoyé à un nouvel utilisateur.

Attributs

Exceptions

Aucune adresse e-mail n’est affectée à la propriété From.

Exemples

L’exemple de code suivant montre comment utiliser la MailDefinition propriété pour définir un message électronique envoyé aux utilisateurs qui modifient leurs mots de passe. Il suppose qu’il existe un fichier appelé MailFile.txt qui contient le texte du message électronique à envoyer.

Pour pouvoir envoyer des messages électroniques aux utilisateurs, vous devez configurer un serveur de messagerie dans le fichier Web.config de votre application. Pour plus d’informations, consultez Guide pratique pour installer et configurer des serveurs virtuels SMTP dans IIS 6.0.

<%@ page language="C#"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  void Changepassword1_SendingMail(object sender, MailMessageEventArgs e)
  {
    // Set mail message fields.
    e.Message.Subject = "New user on Web site.";
    // Replace placeholder text in message body with
    // information provided by the user.
    e.Message.Body = e.Message.Body.Replace("<%ChangedDate%>", (DateTime.Now.ToString()) );
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:changepassword id="Changepassword1" runat="server" 
        maildefinition-bodyfilename="~/MailFiles/mailfile.txt" 
          maildefinition-from="userAdmin@your.site.name.here" 
          onsendingmail="Changepassword1_SendingMail">
      </asp:changepassword>
    </div>
    </form>
</body>
</html>
<%@ page language="VB"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  Sub Changepassword1_SendingMail(ByVal sender As Object, ByVal e As MailMessageEventArgs)
        ' Set mail message fields.
        e.Message.Subject = "New user on Web site."
        ' Replace placeholder text in message body with information 
        '  provided by the user. 
        e.Message.Body = e.Message.Body.Replace("<%ChangedDate%>", DateTime.Now.ToString())
  End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:changepassword id="Changepassword1" runat="server" 
          maildefinition-bodyfilename="~/MailFiles/mailfile.txt"
          maildefinition-from="userAdmin@your.site.name.here" 
          onsendingmail="Changepassword1_SendingMail">
      </asp:changepassword>
    </div>
    </form>
</body>
</html>

Remarques

La MailDefinition propriété renvoie une référence à un groupe de propriétés que vous utilisez pour définir le format et le contenu du message électronique envoyé aux utilisateurs après qu’ils ont modifié leur mot de passe. Les paramètres courants incluent la ligne d’objet et l’adresse de retour de l’expéditeur. Pour obtenir la liste complète des propriétés, consultez MailDefinition.

La MailDefinition propriété est en lecture seule ; toutefois, vous pouvez définir les propriétés de l’objet qu’elle MailDefinition retourne. Vous pouvez définir ces propriétés dans lasous-propriétéde formulaire-, où la sous-propriété représente une propriété de la MailDefinition classe (par exemple, MailDefinition-Subject). Vous pouvez également définir les propriétés par programmation sous la formeSous-propriété. (par exemple, ).MailDefinition.Subject

Un message électronique n’est envoyé que si l’utilisateur a une adresse e-mail inscrite auprès du fournisseur d’appartenance et si la BodyFileName propriété de la MailDefinition propriété pointe vers un fichier valide. Si la BodyFileName propriété est définie, la From propriété doit être définie sur une adresse e-mail ; sinon, une HttpException exception est levée.

Si le message électronique est créé à partir de l’objet MailDefinition , il effectue les substitutions indiquées dans le tableau suivant. Le texte de substitution ne respecte pas la casse.

Texte de substitution Remplacé par
<%UserName%> Nom d’utilisateur du site web de l’utilisateur.
<%Password%> Nouveau mot de passe de l’utilisateur.

Si la IsBodyHtml propriété de l’objet MailDefinition est true, le contenu du message électronique sera encodé en HTML pour vous protéger contre les vulnérabilités de sécurité de script intersite pour le destinataire du message.

Vous pouvez utiliser l’événement SendingMail pour modifier l’objet MailMessage créé par l’objet MailDefinition .

Important

L’envoi de noms de comptes d’utilisateur ou de mots de passe dans un e-mail est une menace potentielle pour la sécurité. Email messages sont généralement envoyés en texte brut et peuvent être lus par des applications de « détection » réseau spéciales. Pour améliorer la sécurité, utilisez les atténuations décrites dans Sécurisation des contrôles de connexion.

Cette propriété ne peut pas être définie par les thèmes ou les thèmes de feuille de style. Pour plus d’informations, consultez ThemeableAttribute et ASP.NET thèmes et skins.

S’applique à

Voir aussi