Sdílet prostřednictvím


ChangePassword.MailDefinition Vlastnost

Definice

Získá odkaz na kolekci vlastností, které definují e-mailovou zprávu, která je odeslána uživatelům po změně hesla.

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

Hodnota vlastnosti

Odkaz na objekt MailDefinition, který definuje e-mailovou zprávu poslanou novému uživateli.

Atributy

Výjimky

Vlastnost From není nastavená na e-mailovou adresu.

Příklady

Následující příklad kódu ukazuje, jak pomocí vlastnosti MailDefinition definovat e-mailovou zprávu, která se odešle uživatelům, kteří mění svá hesla. Předpokládá se, že existuje soubor s názvem MailFile.txt, který obsahuje text e-mailové zprávy k odeslání.

Abyste mohli uživatelům posílat e-mailové zprávy, musíte nakonfigurovat e-mailový server v souboru Web.config pro vaši aplikaci. Další informace naleznete v tématu Postupy: Instalace a konfigurace virtuálních serverů SMTP ve službě 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>

Poznámky

Vlastnost MailDefinition vrátí odkaz na skupinu vlastností, kterou použijete k definování formátu a obsahu e-mailové zprávy odeslané uživatelům po změně hesla. Mezi běžná nastavení patří řádek předmětu a zpáteční adresa odesílatele. Úplný seznam vlastností najdete v tématu MailDefinition.

Vlastnost MailDefinition je jen pro čtení; Můžete však nastavit vlastnosti MailDefinition objektu, který vrací. Tyto vlastnosti můžete nastavit ve formuláři vlastnost-subproperty, kde subproperty představuje vlastnost třídy MailDefinition (například MailDefinition-Subject). Vlastnosti můžete také nastavit programově ve formuláři Vlastnost. subproperty (napříkladMailDefinition.Subject).

E-mailová zpráva se odešle pouze v případě, že má uživatel zaregistrovanou e-mailovou adresu u poskytovatele členství a pokud BodyFileName vlastnost MailDefinition odkazuje na platný soubor. Pokud je vlastnost BodyFileName nastavena, musí být vlastnost From nastavena na e-mailovou adresu; v opačném případě je vyvolán výjimka HttpException.

Pokud se e-mailová zpráva vytvoří z objektu MailDefinition, nahradí se v následující tabulce. Náhradní text nerozlišuje malá a velká písmena.

Náhradní text Nahrazeno za
<%UserName%> Uživatelské jméno uživatele webu.
<%heslo%> Nové heslo pro uživatele.

Pokud je vlastnost IsBodyHtml objektu MailDefinitiontrue, obsah e-mailové zprávy bude kódován html kódem, který bude chránit před ohroženími zabezpečení skriptování mezi weby pro příjemce zprávy.

Událost SendingMail můžete použít k úpravě MailMessage objektu vytvořeného objektem MailDefinition.

Důležitý

Posílání jmen uživatelských účtů nebo hesel v e-mailu je potenciální bezpečnostní hrozbou. E-mailové zprávy se obvykle odesílají ve formátu prostého textu a dají se číst speciálními aplikacemi "šifrování" sítě. Pokud chcete zlepšit zabezpečení, použijte zmírnění rizik popsaná v tématu Zabezpečení přihlašovacích ovládacích prvků.

Tuto vlastnost nelze nastavit motivy ani motivy šablon stylů. Další informace naleznete v tématu ThemeableAttribute a ASP.NET Motivy a skiny.

Platí pro

Viz také