Aracılığıyla paylaş


ChangePassword.MailDefinition Özellik

Tanım

Parolalarını değiştirdikten sonra kullanıcılara gönderilen e-posta iletisini tanımlayan bir özellik koleksiyonuna başvuru alır.

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

Özellik Değeri

Yeni kullanıcıya gönderilen e-posta iletisini tanımlayan bir MailDefinition nesnesine başvuru.

Öznitelikler

Özel durumlar

From özelliği bir e-posta adresine ayarlanmadı.

Örnekler

Aşağıdaki kod örneği, parolalarını değiştiren kullanıcılara gönderilen bir e-posta iletisini tanımlamak için MailDefinition özelliğinin nasıl kullanılacağını gösterir. Gönderilecek e-posta iletisinin metnini içeren MailFile.txt adlı bir dosya olduğunu varsayar.

Kullanıcılara e-posta iletileri gönderebilmek için, uygulamanızın Web.config dosyasında bir e-posta sunucusu yapılandırmanız gerekir. Daha fazla bilgi için bkz. Nasıl yapılır: IIS 6.0'da SMTP Sanal Sunucularını Yükleme ve Yapılandırma.

<%@ 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>

Açıklamalar

MailDefinition özelliği, parolalarını değiştirdikten sonra kullanıcılara gönderilen e-posta iletisinin biçimini ve içeriğini tanımlamak için kullandığınız bir özellik grubuna başvuru döndürür. Sık kullanılan ayarlar konu satırını ve gönderenin iade adresini içerir. Özelliklerin tam listesi için bkz. MailDefinition.

MailDefinition özelliği salt okunurdur; ancak, döndürdüğü MailDefinition nesnesinin özelliklerini ayarlayabilirsiniz. Bu özellikleri, alt özellik sınıfının bir özelliğini temsil ettiği (örneğin, )özelliğinde ayarlayabilirsiniz. Ayrıca özellikleri program aracılığıyla Özellik.Alt Özellik (örneğin,MailDefinition.Subject) biçiminde ayarlayabilirsiniz.

E-posta iletisi yalnızca kullanıcının üyelik sağlayıcısına kayıtlı bir e-posta adresi varsa ve MailDefinition özelliğinin BodyFileName özelliği geçerli bir dosyaya işaret ederse gönderilir. BodyFileName özelliği ayarlanırsa, From özelliği bir e-posta adresine ayarlanmalıdır; aksi takdirde, bir HttpException özel durumu oluşturulur.

E-posta iletisi MailDefinition nesnesinden oluşturulduysa, aşağıdaki tabloda gösterilen değiştirmeleri yapar. Değiştirme metni büyük/küçük harfe duyarlı değildir.

Değiştirme metni ile değiştirildi
<%UserName%> Kullanıcının Web sitesi kullanıcı adı.
parola% % Kullanıcının yeni parolası.

MailDefinition nesnesinin IsBodyHtml özelliği trueise, posta iletisinin içeriği, ileti alıcısı için siteler arası betik oluşturma güvenlik açıklarına karşı korunmak üzere HTML ile kodlanır.

MailDefinition nesnesi tarafından oluşturulan MailMessage nesnesini değiştirmek için SendingMail olayını kullanabilirsiniz.

Önemli

Kullanıcı hesabı adlarını veya parolalarını e-postayla göndermek olası bir güvenlik tehdididir. E-posta iletileri genellikle düz metin olarak gönderilir ve özel ağ "algılama" uygulamaları tarafından okunabilir. Güvenliği geliştirmek için Oturum Açma Denetimlerinin Güvenliğini Sağlamabölümünde açıklanan azaltmaları kullanın.

Bu özellik temalar veya stil sayfası temaları tarafından ayarlanamaz. Daha fazla bilgi için bkz. temalar ve dış görünümler ve ASP.NET.

Şunlara uygulanır

Ayrıca bkz.