語言

CreateUserWizard.MailDefinition 屬性

定義

會獲得一組屬性的參考,這些屬性定義了發送給新使用者的電子郵件訊息的特性。

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

屬性值

一個定義寄給新使用者電子郵件的物件的參考 MailDefinition 。

屬性

例外狀況

From 並未設定為電子郵件地址。

範例

以下程式碼範例透過宣告式與程式化語法來設定該 MailDefinition 屬性的屬性。 此程式碼範例需要一個名為 MailFile.txt 的文字檔,其中包含以下文字。

Your account was set up on our Web site with the following:

    Username:   <%UserName%>

To reset your password, you must answer the following question:

    Password Question: <%PasswordQuestion%>
    Password Answer:   <%PasswordAnswer%>

Thank you for creating an account with our Web site.
<%@ 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 Createuserwizard1_SendingMail(object sender, MailMessageEventArgs e)
  {
    // Set MailMessage fields.
    e.Message.IsBodyHtml = false;
    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("<%PasswordQuestion%>", Createuserwizard1.Question);
    e.Message.Body = e.Message.Body.Replace("<%PasswordAnswer%>",   Createuserwizard1.Answer);  
}
  
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>
      CreateUserWizard.MailDefinition sample</title>
  </head>
  <body>
    <form id="form1" runat="server">
      <div>
        <asp:createuserwizard id="Createuserwizard1" runat="server" 
          maildefinition-bodyfilename="MailFile.txt"
          maildefinition-from="userAdmin@your.site.name.here" 
          onsendingmail="Createuserwizard1_SendingMail">
        </asp:createuserwizard>
      </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 Createuserwizard1_SendingMail(ByVal sender As Object, ByVal e As MailMessageEventArgs)
    ' Set MailMessage fields.
    e.Message.IsBodyHtml = False
    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("<%PasswordQuestion%>", Createuserwizard1.Question)
    e.Message.Body = e.Message.Body.Replace("<%PasswordAnswer%>",   Createuserwizard1.Answer)
  End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>
      CreateUserWizard.MailDefinition sample</title>
  </head>
  <body>
    <form id="form1" runat="server">
      <div>
        <asp:createuserwizard id="Createuserwizard1" runat="server" 
          maildefinition-bodyfilename="MailFile.txt"
          maildefinition-from="userAdmin@your.site.name.here" 
          onsendingmail="Createuserwizard1_SendingMail">
        </asp:createuserwizard>
      </div>
    </form>
  </body>
</html>

備註

該 MailDefinition 屬性會回傳一組屬性的參考,用以定義寄給新使用者的電子郵件格式與內容。 常見的設定包括主旨行和寄件者的傳回位址。 完整屬性列表請參見類別。MailDefinition

該 MailDefinition 屬性是唯讀的;不過,你可以設定它回傳的 MailDefinition 物件屬性。 你可以以宣告式的形式設定屬性MailDefinition,其中 Property-Subproperty 代表類別Subproperty的屬性(例如, MailDefinition)。MailDefinition-Subject 你也可以以程式化的方式設定屬性,格式為 Property.SubProperty (例如)。 MailDefinition.Subject

電子郵件訊息僅 MailDefinition 在 不是 nullBody 且 非空 null或 時才會發送給新使用者。 此時事件 SendingMail 會被提出,並嘗試發送電子郵件。 From該屬性必須設定為電子郵件地址。 否則, HttpException 會拋出例外。

當電子郵件訊息從 MailDefinition 物件建立時,會進行下表中列出的替換。

替換文字 取代為
<%UserName%> 新建立的使用者帳號的使用者名稱。
<%Password%> 新建立的使用者帳號密碼。

若IsBodyHtmlMailDefinition物件屬性為 true,郵件內容將以 HTML 編碼,以防止跨站腳本安全漏洞,保護收件人。

你可以用這個OnSendingMail方法修改物件所MailMessage建立的。MailDefinition

此屬性無法由主題或樣式表主題設定。 更多資訊請參閱 ThemeableAttribute 並 ASP.NET 主題與皮膚。

Note

無法保證使用者一定會收到或查看電子郵件。 為了驗證用戶是否收到電子郵件通知,建議在郵件中提供確認連結,讓使用者確認通知已收到。

適用於

另請參閱