다음을 통해 공유


MailMessage 클래스

정의

주의

The recommended alternative is System.Net.Mail.MailMessage. http://go.microsoft.com/fwlink/?linkid=14202

이메일 메시지를 구성하는 속성 및 메서드를 제공합니다. 권장되는 대체 항목: System.Net.Mail.

public ref class MailMessage
public class MailMessage
[System.Obsolete("The recommended alternative is System.Net.Mail.MailMessage. http://go.microsoft.com/fwlink/?linkid=14202")]
public class MailMessage
type MailMessage = class
[<System.Obsolete("The recommended alternative is System.Net.Mail.MailMessage. http://go.microsoft.com/fwlink/?linkid=14202")>]
type MailMessage = class
Public Class MailMessage
상속
MailMessage
특성

예제

다음 예제에서는 MailMessage 클래스를 사용하는 방법을 보여 줍니다.

중요

이 컨트롤은 잠재적 보안 위협에는 사용자 입력을 허용 하는 텍스트 상자를 있습니다. 기본적으로 ASP.NET 웹 페이지는 사용자 입력 내용에 스크립트 또는 HTML 요소가 포함되어 있지 않은지 확인합니다. 자세한 내용은 Script Exploits Overview를 참조하세요.

<%-- 
This example shows how to send a mail message from a Web Forms page
using the classes in the System.Web.Mail namespace.
--%>

<%@ IMPORT namespace="System.Web.Mail" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script language="C#" runat="server">
  void Page_Load()
  {
     if (!IsPostBack)
     {
        txtTo.Text="john@contoso.com";
        txtFrom.Text="marsha@contoso.com";
        txtCc.Text="fred@contoso.com";
        txtBcc.Text="wilma@contoso.com";
        txtSubject.Text="Hello";
        txtBody.Text="This is a test message.";
        txtAttach.Text=@"C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Sunset.jpg,"
           + @"C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Winter.jpg";
    txtBodyEncoding.Text = Encoding.ASCII.EncodingName;
    txtBodyFormat.Text="HTML";
    txtPriority.Text="Normal";
    txtUrlContentBase.Text="http://www.contoso.com/images";
    txtUrlContentLocation.Text="http://www.contoso.com/images";
        // Name of relay mail server in your domain.
    txtMailServer.Text="smarthost";
     }
  }

  void btnSubmit_Click(Object sender, EventArgs e)
  {
     string sTo, sFrom, sSubject, sBody;
     string sAttach, sCc, sBcc, sBodyEncoding;
     string sBodyFormat, sMailServer, sPriority;
     string sUrlContentBase, sUrlContentLocation;
 int iLoop1;

 sTo = txtTo.Text.Trim();
 sFrom = txtFrom.Text.Trim();
 sSubject = txtSubject.Text.Trim();
 sBody = txtBody.Text.Trim();
 sAttach = txtAttach.Text.Trim();
 sCc = txtCc.Text.Trim();
 sBcc = txtBcc.Text.Trim();
 sBodyFormat = txtBodyFormat.Text.Trim();
 sBodyEncoding = txtBodyEncoding.Text.Trim();
 sPriority = txtPriority.Text.Trim();
 sUrlContentBase = txtUrlContentBase.Text.Trim();
 sUrlContentLocation = txtUrlContentLocation.Text.Trim();
 sMailServer = txtMailServer.Text.Trim();

 MailMessage MyMail = new MailMessage();
 MyMail.From = sFrom;
 MyMail.To = sTo;
 MyMail.Subject = sSubject;
 MyMail.Body = sBody;
 MyMail.Cc = sCc;
 MyMail.Bcc = sBcc;
 MyMail.UrlContentBase = sUrlContentBase;
 MyMail.UrlContentLocation = sUrlContentLocation;

     if (txtBodyEncoding.Text == Encoding.UTF7.EncodingName)
        MyMail.BodyEncoding = Encoding.UTF7;
     else if (txtBodyEncoding.Text == Encoding.UTF8.EncodingName)
        MyMail.BodyEncoding = Encoding.UTF8;
     else
        MyMail.BodyEncoding = Encoding.ASCII;

 switch (sBodyFormat.ToUpper())
     {
        case "HTML": 
           MyMail.BodyFormat = MailFormat.Html;
           break;
        default: 
           MyMail.BodyFormat = MailFormat.Text;
           break;
     }
     
     switch (sPriority.ToUpper())
     {
        case "HIGH": 
           MyMail.Priority = MailPriority.High;
           break;
        case "LOW": 
           MyMail.Priority = MailPriority.Low;
           break;
        default: 
           MyMail.Priority = MailPriority.Normal;
           break;
     }
     
     // Build an IList of mail attachments.
     if (sAttach != "")
     {
        char[] delim = new char[] {','};
        foreach (string sSubstr in sAttach.Split(delim))
        {
           MailAttachment MyAttachment = new MailAttachment(sSubstr);
           MyMail.Attachments.Add(MyAttachment);
        }
     }
 
     SmtpMail.SmtpServer = sMailServer;
 SmtpMail.Send(MyMail);
 lblMsg1.Text="C# Message sent to " + MyMail.To;
  }

  void btnClear_Click(Object sender, EventArgs e)
  {
     lblMsg1.Text="";
     txtTo.Text="";
     txtFrom.Text="";
     txtSubject.Text="";
     txtBody.Text="";
     txtAttach.Text="";
     txtBcc.Text="";
     txtCc.Text="";
 txtBodyEncoding.Text="";
 txtBodyFormat.Text="";
 txtPriority.Text="";
 txtUrlContentBase.Text="";
 txtUrlContentLocation.Text="";
 txtMailServer.Text="";
     btnSubmit.Text="Submit";
  }
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Mail Form Example</title>
</head>
<body>

   <h4>Send a new mail message:</h4>
   <form id="form1" method="Post" action="MailForm.aspx" runat="server">
      <table style="width:350; background-color:#FFFF99">
         <tr>
            <td align="Right"><b>To:</b></td>
            <td><Asp:Textbox id="txtTo" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>From:</b></td>
            <td><Asp:Textbox id="txtFrom" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>Subject:</b></td>
            <td><Asp:Textbox id="txtSubject" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>MessageBody:</b></td>
            <td><Asp:Textbox id="txtBody" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>Attachments:</b></td>
            <td><Asp:Textbox id="txtAttach" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>CC:</b></td>
            <td><Asp:Textbox id="txtBcc" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>BCC:</b></td>
            <td><Asp:Textbox id="txtCc" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>BodyEncoding:</b></td>
            <td><Asp:Textbox id="txtBodyEncoding" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>BodyFormat:</b></td>
            <td><Asp:Textbox id="txtBodyFormat" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>Priority:</b></td>
            <td><Asp:Textbox id="txtPriority" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>URL Content Base:</b></td>
            <td><Asp:Textbox id="txtUrlContentBase" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>URL Content Location:</b></td>
            <td><Asp:Textbox id="txtUrlContentLocation" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>Mail Server:</b></td>
            <td><Asp:Textbox id="txtMailServer" runat="server"/></td>
         </tr>
      </table><br />

      <asp:button id="btnSubmit" Text="Submit" OnClick="btnSubmit_Click" runat="server"/>
      <asp:button id="btnClear" Text="Clear" OnClick="btnClear_Click" runat="server"/>
      <p><asp:Label id="lblMsg1" runat="server"/></p>
   </form>
   </body>
</html>
<%-- 
This example shows how to send a mail message from a Web Forms page 
using the classes in the System.Web.Mail namespace.
--%>

<%@ IMPORT namespace="System.Web.Mail" %>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script language="VB" runat="server">
    Sub Page_Load()
        If Not IsPostBack Then
            lblMsg1.Text = ""
            txtTo.Text = "john@contoso.com"
            txtFrom.Text = "marsha@contoso.com"
            txtCc.Text = "fred@contoso.com"
            txtBcc.Text = "wilma@contoso.com"
            txtSubject.Text = "Hello"
            txtBody.Text = "This is a test message."
            txtAttach.Text = "C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Sunset.jpg," _
               & "C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Winter.jpg"
            txtBodyEncoding.Text = Encoding.ASCII.EncodingName
            txtBodyFormat.Text = "HTML"
            txtPriority.Text = "Normal"
            txtUrlContentBase.Text = "http://www.contoso.com/images"
            txtUrlContentLocation.Text = "http://www.contoso.com/images"
            ' Name of relay mail server in your domain.
            txtMailServer.Text = "smarthost" '
        End If
    End Sub

    Sub btnSubmit_Click(ByVal sender As Object, ByVal e As EventArgs)
        Dim sTo As String, sFrom As String, sSubject As String, sBody As String
        Dim sAttach As String, sCc As String, sBcc As String, sBodyEncoding As String
        Dim sBodyFormat As String, sMailServer As String, sPriority As String
        Dim sUrlContentBase As String, sUrlContentLocation As String
        Dim iLoop1 As Integer

        sTo = Trim(txtTo.Text)
        sFrom = Trim(txtFrom.Text)
        sSubject = Trim(txtSubject.Text)
        sBody = Trim(txtBody.Text)
        sAttach = Trim(txtAttach.Text)
        sCc = Trim(txtCc.Text)
        sBcc = Trim(txtBcc.Text)
        sBodyFormat = Trim(txtBodyFormat.Text)
        sBodyEncoding = Trim(txtBodyEncoding.Text)
        sPriority = Trim(txtPriority.Text)
        sUrlContentBase = Trim(txtUrlContentBase.Text)
        sUrlContentLocation = Trim(txtUrlContentLocation.Text)
        sMailServer = Trim(txtMailServer.Text)

        Dim MyMail As MailMessage = New MailMessage()
        MyMail.From = sFrom
        MyMail.To = sTo
        MyMail.Subject = sSubject
        MyMail.Body = sBody
        MyMail.Cc = sCc
        MyMail.Bcc = sBcc
        MyMail.UrlContentBase = sUrlContentBase
        MyMail.UrlContentLocation = sUrlContentLocation

        Select Case txtBodyEncoding.Text
            Case Encoding.UTF7.EncodingName : MyMail.BodyEncoding = Encoding.UTF7
            Case Encoding.UTF8.EncodingName : MyMail.BodyEncoding = Encoding.UTF8
            Case Else : MyMail.BodyEncoding = Encoding.ASCII
        End Select

        Select Case UCase(sBodyFormat)
            Case "HTML" : MyMail.BodyFormat = MailFormat.Html
            Case Else : MyMail.BodyFormat = MailFormat.Text
        End Select
     
        Select Case UCase(sPriority)
            Case "HIGH" : MyMail.Priority = MailPriority.High
            Case "LOW" : MyMail.Priority = MailPriority.Low
            Case Else : MyMail.Priority = MailPriority.Normal
        End Select
     
        ' Build an IList of mail attachments.
        If sAttach <> "" Then
            Dim delim As Char = ","
            Dim sSubstr As String
            For Each sSubstr In sAttach.Split(delim)
                Dim myAttachment As MailAttachment = New MailAttachment(sSubstr)
                MyMail.Attachments.Add(myAttachment)
            Next
        End If
 
        SmtpMail.SmtpServer = sMailServer
        SmtpMail.Send(MyMail)

        lblMsg1.Text = "VB Message sent to " & MyMail.To
    End Sub

    Sub btnClear_Click(ByVal sender As Object, ByVal e As EventArgs)
        lblMsg1.Text = ""
        txtTo.Text = ""
        txtFrom.Text = ""
        txtSubject.Text = ""
        txtBody.Text = ""
        txtAttach.Text = ""
        txtBcc.Text = ""
        txtCc.Text = ""
        txtBodyEncoding.Text = ""
        txtBodyFormat.Text = ""
        txtPriority.Text = ""
        txtUrlContentBase.Text = ""
        txtUrlContentLocation.Text = ""
        txtMailServer.Text = ""
        btnSubmit.Text = "Submit"
    End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
    <title>Send a new mail message:</title>
</head>
    <body>
   <h4>Send a new mail message:</h4>
   <form id="form1" method="Post" action="MailForm.aspx" runat="server">
      <table style="width:350; background-color:#FFFF99">
         <tr>
            <td align="Right"><b>To:</b></td>
            <td><Asp:Textbox id="txtTo" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>From:</b></td>
            <td><Asp:Textbox id="txtFrom" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>Subject:</b></td>
            <td><Asp:Textbox id="txtSubject" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>MessageBody:</b></td>
            <td><Asp:Textbox id="txtBody" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>Attachments:</b></td>
            <td><Asp:Textbox id="txtAttach" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>CC:</b></td>
            <td><Asp:Textbox id="txtBcc" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>BCC:</b></td>
            <td><Asp:Textbox id="txtCc" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>BodyEncoding:</b></td>
            <td><Asp:Textbox id="txtBodyEncoding" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>BodyFormat:</b></td>
            <td><Asp:Textbox id="txtBodyFormat" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>Priority:</b></td>
            <td><Asp:Textbox id="txtPriority" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>URL Content Base:</b></td>
            <td><Asp:Textbox id="txtUrlContentBase" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>URL Content Location:</b></td>
            <td><Asp:Textbox id="txtUrlContentLocation" runat="server"/></td>
         </tr>
         <tr>
            <td align="Right"><b>Mail Server:</b></td>
            <td><Asp:Textbox id="txtMailServer" runat="server"/></td>
         </tr>
      </table><br />

      <asp:button id="btnSubmit" Text="Submit" OnClick="btnSubmit_Click" runat="server"/>
      <asp:button id="btnClear" Text="Clear" OnClick="btnClear_Click" runat="server"/>
      <p><asp:Label id="lblMsg1" runat="server"/></p>
   </form>
   </body>
</html>

생성자

MailMessage()
사용되지 않음.

MailMessage 클래스의 새 인스턴스를 초기화합니다. 권장되는 대체 항목: System.Net.Mail.

속성

Attachments
사용되지 않음.

메시지와 함께 전달되는 첨부 파일의 컬렉션을 지정합니다. 권장되는 대체 항목: System.Net.Mail.

Bcc
사용되지 않음.

이메일 메시지의 BCC(숨은 참조)를 받는 세미콜론으로 구분된 이메일 주소 목록을 가져오거나 설정합니다. 권장되는 대체 항목: System.Net.Mail.

Body
사용되지 않음.

이메일 메시지의 본문을 가져오거나 설정합니다. 권장되는 대체 항목: System.Net.Mail.

BodyEncoding
사용되지 않음.

이메일 메시지 본문의 인코딩 형식을 가져오거나 설정합니다. 권장되는 대체 항목: System.Net.Mail.

BodyFormat
사용되지 않음.

이메일 메시지 본문의 콘텐츠 형식을 가져오거나 설정합니다. 권장되는 대체 항목: System.Net.Mail.

Cc
사용되지 않음.

이메일 메시지의 CC(참조)를 받는 세미콜론으로 구분된 이메일 주소 목록을 가져오거나 설정합니다. 권장되는 대체 항목: System.Net.Mail.

Fields
사용되지 않음.

Microsoft Collaboration Data Objects(CDO) 필드에 매핑되는 개체의 컬렉션을 가져옵니다. 권장되는 대체 항목: System.Net.Mail.

From
사용되지 않음.

보낸 사람의 이메일 주소를 가져오거나 설정합니다. 권장되는 대체 항목: System.Net.Mail.

Headers
사용되지 않음.

이메일 메시지와 함께 전달되는 사용자 지정 헤더를 지정합니다. 권장되는 대체 항목: System.Net.Mail.

Priority
사용되지 않음.

이메일 메시지의 우선 순위를 가져오거나 설정합니다. 권장되는 대체 항목: System.Net.Mail.

Subject
사용되지 않음.

이메일 메시지의 제목 줄을 가져오거나 설정합니다. 권장되는 대체 항목: System.Net.Mail.

To
사용되지 않음.

세미콜론으로 구분된 받는 사람 이메일 주소 목록을 가져오거나 설정합니다. 권장되는 대체 항목: System.Net.Mail.

UrlContentBase
사용되지 않음.

이메일 메시지의 HTML로 인코딩된 본문에서 사용된 모든 상대 URL의 URL 기준인 Content-Base HTTP 헤더를 가져오거나 설정합니다. 권장되는 대체 항목: System.Net.Mail.

UrlContentLocation
사용되지 않음.

이메일 메시지의 Content-Location HTTP 헤더를 가져오거나 설정합니다. 권장되는 대체 항목: System.Net.Mail.

메서드

Equals(Object)
사용되지 않음.

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()
사용되지 않음.

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()
사용되지 않음.

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()
사용되지 않음.

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ToString()
사용되지 않음.

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

적용 대상