ChangePassword.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 ファイルがあることを前提としています。

ユーザーに電子メール メッセージを送信できるようにするには、アプリケーションのWeb.config ファイルで電子メール サーバーを構成する必要があります。 詳細については、「 方法: IIS 6.0 に SMTP 仮想サーバーをインストールして構成する」を参照してください。

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

注釈

プロパティは MailDefinition 、ユーザーがパスワードを変更した後にユーザーに送信される電子メール メッセージの形式と内容を定義するために使用するプロパティのグループへの参照を返します。 一般的な設定には、件名と送信者の差出人住所が含まれます。 プロパティの全一覧については、MailDefinition を参照してください。

プロパティは MailDefinition 読み取り専用です。ただし、返されるオブジェクトのプロパティを MailDefinition 設定できます。 これらのプロパティは、フォーム プロパティ-サブプロパティで設定できます。 ここで、サブプロパティ は クラスの MailDefinition プロパティ (例: MailDefinition-Subject) を表します。 プロパティは、 Property.Subproperty (例:MailDefinition.Subject ) 形式でプログラムで設定することもできます。

電子メール メッセージは、ユーザーがメンバーシップ プロバイダーに登録されている電子メール アドレスを持ち、プロパティの MailDefinition プロパティが有効なファイルを指している場合BodyFileNameにのみ送信されます。 プロパティが BodyFileName 設定されている場合は、プロパティを From 電子メール アドレスに設定する必要があります。それ以外の場合は例外 HttpException がスローされます。

電子メール メッセージが オブジェクトから MailDefinition 作成された場合、次の表に示す置換が行われます。 置換テキストでは大文字と小文字が区別されません。

置換テキスト 新しいモジュール
<%UserName%> ユーザーの Web サイト ユーザー名。
<%Password%> ユーザーの新しいパスワード。

オブジェクトの IsBodyHtmlMailDefinition プロパティが の場合、 trueメール メッセージの内容は HTML エンコードされ、メッセージ受信者のクロスサイト スクリプティング セキュリティの脆弱性から保護されます。

イベントをSendingMail使用して、オブジェクトによって作成されるオブジェクトをMailDefinition変更MailMessageできます。

重要

ユーザー アカウント名またはパスワードを電子メールで送信することは、潜在的なセキュリティ上の脅威です。 Emailメッセージは通常、プレーン テキストで送信され、特別なネットワーク "スニッフィング" アプリケーションで読み取ることができます。 セキュリティを強化するには、「 ログイン制御のセキュリティ保護」で説明されている軽減策を使用します。

このプロパティは、テーマまたはスタイル シート テーマによって設定することはできません。 詳細については、「テーマとスキンの ASP.NET」を参照してくださいThemeableAttribute

適用対象

こちらもご覧ください