Condividi tramite


ChangePassword.MailDefinition Proprietà

Definizione

Ottiene un riferimento a una raccolta di proprietà che definiscono il messaggio di posta elettronica inviato agli utenti dopo che hanno cambiato la propria password.

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

Valore della proprietà

Riferimento a un MailDefinition oggetto che definisce il messaggio di posta elettronica inviato a un nuovo utente.

Attributi

Eccezioni

La proprietà From non è impostata su un indirizzo di posta elettronica.

Esempio

Nell'esempio di codice seguente viene illustrato come utilizzare la MailDefinition proprietà per definire un messaggio di posta elettronica inviato agli utenti che modificano le password. Si presuppone che sia presente un file denominato MailFile.txt che contiene il testo del messaggio di posta elettronica da inviare.

Per poter inviare messaggi di posta elettronica agli utenti, è necessario configurare un server di posta elettronica nel file di Web.config per l'applicazione. Per altre informazioni, vedere Procedura: Installare e configurare server virtuali SMTP in 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>

Commenti

La MailDefinition proprietà restituisce un riferimento a un gruppo di proprietà utilizzate per definire il formato e il contenuto del messaggio di posta elettronica inviato agli utenti dopo la modifica della password. Le impostazioni comuni includono la riga dell'oggetto e l'indirizzo di restituzione del mittente. Per un elenco completo delle proprietà, vedere MailDefinition.

La proprietà è di sola lettura. È MailDefinition tuttavia possibile impostare le proprietà dell'oggetto MailDefinition restituito. È possibile impostare queste proprietà nellasottoproprietà della proprietà- del modulo, in cui la sottoproprietà rappresenta una proprietà della MailDefinition classe , ad esempio MailDefinition-Subject. È anche possibile impostare le proprietà a livello di codice nel formato Proprietà.Sottoproprietà ,ad esempioMailDefinition.Subject.

Un messaggio di posta elettronica viene inviato solo se l'utente ha un indirizzo di posta elettronica registrato con il provider di appartenenze e se la BodyFileName proprietà della MailDefinition proprietà punta a un file valido. Se la BodyFileName proprietà è impostata, la From proprietà deve essere impostata su un indirizzo di posta elettronica. In caso contrario, viene generata un'eccezione HttpException .

Se il messaggio di posta elettronica viene creato dall'oggetto MailDefinition , eseguirà le sostituzioni illustrate nella tabella seguente. Il testo di sostituzione non fa distinzione tra maiuscole e minuscole.

Testo di sostituzione Sostituito con
<%UserName%> Nome utente del sito Web dell'utente.
<%Password%> Nuova password per l'utente.

Se la IsBodyHtml proprietà dell'oggetto MailDefinition è true, il contenuto del messaggio di posta elettronica verrà codificato in formato HTML per proteggersi dalle vulnerabilità di sicurezza di scripting tra siti per il destinatario del messaggio.

È possibile utilizzare l'evento SendingMail per modificare l'oggetto MailMessage creato dall'oggetto MailDefinition .

Importante

L'invio di nomi di account utente o password tramite posta elettronica è una potenziale minaccia per la sicurezza. I messaggi di posta elettronica vengono in genere inviati in testo normale e possono essere letti da applicazioni speciali di "sniffing" di rete. Per migliorare la sicurezza, usare le mitigazioni descritte in Protezione dei controlli di accesso.

Questa proprietà non può essere impostata da temi oppure temi di fogli di stile. Per altre informazioni, vedere ThemeableAttribute e ASP.NET Temi e interfacce.

Si applica a

Vedi anche