MailMessage MailMessage MailMessage MailMessage Class

정의

SmtpClient 클래스를 사용하여 보낼 수 있는 이메일 메시지를 나타냅니다.Represents an email message that can be sent using the SmtpClient class.

public ref class MailMessage : IDisposable
public class MailMessage : IDisposable
type MailMessage = class
    interface IDisposable
Public Class MailMessage
Implements IDisposable
상속
MailMessageMailMessageMailMessageMailMessage
구현

예제

다음 코드 예제는 만들고 첨부 파일을 포함 하는 전자 메일 메시지를 보내는 방법을 보여 줍니다.The following code example demonstrates creating and sending an email message that includes an attachment.

static void CreateMessageWithAttachment( String^ server )
{
   
   // Specify the file to be attached and sent.
   // This example assumes that a file named Data.xls exists in the
   // current working directory.
   String^ file = L"data.xls";
   
   // Create a message and set up the recipients.
   MailMessage^ message = gcnew MailMessage( L"jane@contoso.com",L"ben@contoso.com",L"Quarterly data report.",L"See the attached spreadsheet." );
   
   // Create  the file attachment for this email message.
   Attachment^ data = gcnew Attachment(file, MediaTypeNames::Application::Octet);
   
   // Add time stamp information for the file.
   ContentDisposition^ disposition = data->ContentDisposition;
   disposition->CreationDate = System::IO::File::GetCreationTime( file );
   disposition->ModificationDate = System::IO::File::GetLastWriteTime( file );
   disposition->ReadDate = System::IO::File::GetLastAccessTime( file );
   
   // Add the file attachment to this email message.
   message->Attachments->Add( data );
   
   //Send the message.
   SmtpClient^ client = gcnew SmtpClient( server );
   
   // Add credentials if the SMTP server requires them.
   client->Credentials = CredentialCache::DefaultNetworkCredentials;
   client->Send( message );
   
   // Display the values in the ContentDisposition for the attachment.
   ContentDisposition^ cd = data->ContentDisposition;
   Console::WriteLine( L"Content disposition" );
   Console::WriteLine( cd );
   Console::WriteLine( L"File {0}", cd->FileName );
   Console::WriteLine( L"Size {0}", cd->Size );
   Console::WriteLine( L"Creation {0}", cd->CreationDate );
   Console::WriteLine( L"Modification {0}", cd->ModificationDate );
   Console::WriteLine( L"Read {0}", cd->ReadDate );
   Console::WriteLine( L"Inline {0}", cd->Inline );
   Console::WriteLine( L"Parameters: {0}", cd->Parameters->Count );
   IEnumerator^ myEnum1 = cd->Parameters->GetEnumerator();
   while ( myEnum1->MoveNext() )
   {
      DictionaryEntry^ d = safe_cast<DictionaryEntry^>(myEnum1->Current);
      Console::WriteLine( L"{0} = {1}", d->Key, d->Value );
   }

   data->~Attachment();
   client->~SmtpClient();
}


public static void CreateMessageWithAttachment(string server)
{
	// Specify the file to be attached and sent.
	// This example assumes that a file named Data.xls exists in the
	// current working directory.
	string file = "data.xls";
	// Create a message and set up the recipients.
	MailMessage message = new MailMessage(
	   "jane@contoso.com",
	   "ben@contoso.com",
	   "Quarterly data report.",
	   "See the attached spreadsheet.");

	// Create  the file attachment for this email message.
	Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
	// Add time stamp information for the file.
	ContentDisposition disposition = data.ContentDisposition;
	disposition.CreationDate = System.IO.File.GetCreationTime(file);
	disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
	disposition.ReadDate = System.IO.File.GetLastAccessTime(file);
	// Add the file attachment to this email message.
	message.Attachments.Add(data);

	//Send the message.
	SmtpClient client = new SmtpClient(server);
	// Add credentials if the SMTP server requires them.
	client.Credentials = CredentialCache.DefaultNetworkCredentials;

    try {
	  client.Send(message);
	}
	catch (Exception ex) {
	  Console.WriteLine("Exception caught in CreateMessageWithAttachment(): {0}", 
                  ex.ToString() );			  
	}
	// Display the values in the ContentDisposition for the attachment.
	ContentDisposition cd = data.ContentDisposition;
	Console.WriteLine("Content disposition");
	Console.WriteLine(cd.ToString());
	Console.WriteLine("File {0}", cd.FileName);
	Console.WriteLine("Size {0}", cd.Size);
	Console.WriteLine("Creation {0}", cd.CreationDate);
	Console.WriteLine("Modification {0}", cd.ModificationDate);
	Console.WriteLine("Read {0}", cd.ReadDate);
	Console.WriteLine("Inline {0}", cd.Inline);
	Console.WriteLine("Parameters: {0}", cd.Parameters.Count);
	foreach (DictionaryEntry d in cd.Parameters)
	{
		Console.WriteLine("{0} = {1}", d.Key, d.Value);
	}
	data.Dispose();
}

설명

인스턴스를 MailMessage 클래스는 사용 하 여 배달용 SMTP 서버로 전송 되는 전자 메일 메시지를 생성 하는 데 사용 되는 SmtpClient 클래스입니다.Instances of the MailMessage class are used to construct email messages that are transmitted to an SMTP server for delivery using the SmtpClient class.

보낸 사람, 받는 사람, 제목 및 전자 메일 메시지의 본문 매개 변수로 지정할 수 있습니다 때를 MailMessage 초기화 하는 데 사용 되는 MailMessage 개체입니다.The sender, recipient, subject, and body of an email message may be specified as parameters when a MailMessage is used to initialize a MailMessage object. 이러한 매개 변수를 설정할 수도 있습니다 또는에서 속성을 사용 하 여 액세스를 MailMessage 개체입니다.These parameters may also be set or accessed using properties on the MailMessage object.

기본 메일 메시지 헤더 및 메시지에 대 한 요소를 설정할 수 있습니다의 다음 속성을 사용 하 여 MailMessage 클래스입니다.The primary mail message headers and elements for the message may be set using the following properties of the MailMessage class.

메일 머리글 또는 일부Mail header or part 속성Property
첨부 파일Attachments Attachments
숨은 참조 복사본 (숨은 참조)Blind carbon copies (BCC) Bcc
탄소 복사본 (CC)Carbon copies (CC) CC
콘텐츠 형식Content-Type BodyEncoding
사용자 지정 헤더에 대 한 인코딩Encoding for custom headers HeadersEncoding
메시지 본문Message body Body
우선 순위Priority Priority
받는 사람Recipient To
회신 대상Reply-To ReplyToList
보낸 사람Sender From
제목Subject Subject

합니다 MailMessage 클래스에서는 사용 하 여 메시지 헤더 컬렉션에 액세스 하려면 애플리케이션을 Headers 속성입니다.The MailMessage class also allows an application to access the headers collection for the message using the Headers property. 이 컬렉션은 읽기 전용 (새 컬렉션을 설정할 수 없습니다), 사용자 지정 헤더에 추가할 수 있습니다 하거나이 컬렉션에서 삭제 합니다.While this collection is read-only (a new collection can not be set), custom headers can be added to or deleted from this collection. 경우 추가 사용자 지정 헤더가 포함 됩니다는 MailMessage 인스턴스에 전송 됩니다.Any custom headers added will be included when the MailMessage instance is sent. 헤더만 특히이 컬렉션에 추가 메시지를 보내기 전에 Headers 속성 컬렉션에 포함 됩니다.Before a message is sent, only headers specifically added to this collection in the Headers property are included in the collection. 후를 MailMessage 인스턴스가 전달 된를 Headers 속성의 관련된 속성을 사용 하 여 설정 된 헤더에도 포함 됩니다는 MailMessage 클래스 또는 매개 변수 전달 될 때를 MailMessage 초기화 하는 데 사용 되는 MailMessage 개체.After a the MailMessage instance is sent, the Headers property will also include headers that are set using the associated properties of the MailMessage class or parameters passed when a MailMessage is used to initialize a MailMessage object.

일부 메일 헤더에 잘못 된 경우 전자 메일 메시지를 손상 시킬 수 있습니다.If some mail headers are malformed, they could cause the email message to become corrupted. 속성을 사용 하 여 설정할 수 있는 헤더 컬렉션의 모든 메일 헤더를 MailMessage 클래스에만 설정 해야 사용 하 여는 MailMessage 클래스 속성 또는 매개 변수로 전달 된 경우를 MailMessage 초기화를 MailMessage 개체입니다.So any mail header in the headers collection that can be set using a property on the MailMessage class should only be set using the MailMessage class property or as a parameter passed when a MailMessage initializes a MailMessage object. 사용 하 여 다음과 같은 메일 머리글 추가 되지 않아야 합니다 Headers 사용 하 여 이러한 헤더에 대 한 속성 및 값 설정는 Headers 속성 삭제 되거나 덮어쓸 메시지를 보낼 때:The following list of mail headers should not be added using the Headers property and any values set for these headers using the Headers property will be discarded or overwritten when the message is sent:

  • 숨은 참조Bcc

  • CcCc

  • 콘텐츠 IDContent-ID

  • 콘텐츠 위치Content-Location

  • 콘텐츠 전송 인코딩Content-Transfer-Encoding

  • 콘텐츠 형식Content-Type

  • 날짜Date

  • 시작From

  • 중요도Importance

  • MIME 버전MIME-Version

  • 우선 순위Priority

  • 회신 대상Reply-To

  • 보낸 사람Sender

  • 대상To

  • X-우선 순위X-Priority

애플리케이션이 사용 하 여 X-보낸 사람 헤더를 지정 하지 않은 경우는 Headers 속성을 MailMessage 클래스 만들어집니다 메시지를 보낼 때.If the application does not specify an X-Sender header using the Headers property, the MailMessage class will create one when the message is sent.

사용 된 AlternateViews 다양 한 형식의 전자 메일 메시지의 복사본을 지정 하는 속성입니다.Use the AlternateViews property to specify copies of an email message in different formats. 예를 들어 html에서 메시지를 보내는 경우 받는 사람에 게 일부 HTML 콘텐츠를 표시할 수 없는 전자 메일 프로그램을 사용 하면 일반 텍스트 버전을 제공 하려는 합니다.For example, if you send a message in HTML, you might also want to provide a plain text version in case some of the recipients use email readers that cannot display HTML content. 대체 보기를 사용 하 여 메시지를 만드는 방법을 보여 주는 예제를 참조 하세요. AlternateViews합니다.For an example that demonstrates creating a message with alternate views, see AlternateViews.

사용 된 Attachments 전자 메일 메시지에 첨부 파일에 추가할 속성입니다.Use the Attachments property to add attachments to an email message. 첨부 파일을 사용 하 여 메시지를 만드는 방법을 보여 주는 예제를 참조 하세요. Attachments합니다.For an example that demonstrates creating a message with an attachment, see Attachments. Send-mailmessage에서 Dispose를 호출 하면 참조 되는 각 첨부 파일에 대해서도 Dispose를 호출 합니다.Calling Dispose on the MailMessage also calls Dispose on each referenced Attachment.

전자 메일 메시지를 어셈블한 후 보낼 수 있습니다 사용 하 여 합니다 Send 또는 SendAsync 메서드.After assembling your email message, you can send it by using the Send or SendAsync methods.

생성자

MailMessage() MailMessage() MailMessage() MailMessage()

MailMessage 클래스의 빈 인스턴스를 초기화합니다.Initializes an empty instance of the MailMessage class.

MailMessage(MailAddress, MailAddress) MailMessage(MailAddress, MailAddress) MailMessage(MailAddress, MailAddress) MailMessage(MailAddress, MailAddress)

지정된 MailMessage 클래스 개체를 사용하여 MailAddress 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the MailMessage class by using the specified MailAddress class objects.

MailMessage(String, String) MailMessage(String, String) MailMessage(String, String) MailMessage(String, String)

지정된 MailMessage 클래스 개체를 사용하여 String 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the MailMessage class by using the specified String class objects.

MailMessage(String, String, String, String) MailMessage(String, String, String, String) MailMessage(String, String, String, String) MailMessage(String, String, String, String)

MailMessage 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the MailMessage class.

속성

AlternateViews AlternateViews AlternateViews AlternateViews

메시지 본문의 대체 형식을 저장하는 데 사용되는 첨부 파일 컬렉션을 가져옵니다.Gets the attachment collection used to store alternate forms of the message body.

Attachments Attachments Attachments Attachments

이 이메일 메시지에 첨부된 데이터를 저장하는 데 사용되는 첨부 파일 컬렉션을 가져옵니다.Gets the attachment collection used to store data attached to this email message.

Bcc Bcc Bcc Bcc

이 이메일 메시지의 BCC(숨은 참조) 받는 사람이 들어 있는 주소 컬렉션을 가져옵니다.Gets the address collection that contains the blind carbon copy (BCC) recipients for this email message.

Body Body Body Body

메시지 본문을 가져오거나 설정합니다.Gets or sets the message body.

BodyEncoding BodyEncoding BodyEncoding BodyEncoding

메시지 본문을 인코딩하는 데 사용되는 인코딩을 가져오거나 설정합니다.Gets or sets the encoding used to encode the message body.

BodyTransferEncoding BodyTransferEncoding BodyTransferEncoding BodyTransferEncoding

메시지 본문을 인코딩하는 데 사용되는 전송 인코딩을 가져오거나 설정합니다.Gets or sets the transfer encoding used to encode the message body.

CC CC CC CC

이 이메일 메시지의 CC(참조) 받는 사람이 들어 있는 주소 컬렉션을 가져옵니다.Gets the address collection that contains the carbon copy (CC) recipients for this email message.

DeliveryNotificationOptions DeliveryNotificationOptions DeliveryNotificationOptions DeliveryNotificationOptions

이 이메일 메시지의 배달 알림을 가져오거나 설정합니다.Gets or sets the delivery notifications for this email message.

From From From From

이 이메일 메시지의 보낸 사람 주소를 가져오거나 설정합니다.Gets or sets the from address for this email message.

Headers Headers Headers Headers

이 이메일 메시지와 함께 전송되는 이메일 헤더를 가져옵니다.Gets the email headers that are transmitted with this email message.

HeadersEncoding HeadersEncoding HeadersEncoding HeadersEncoding

이 이메일 메시지의 사용자 정의된 사용자 지정 헤더에 사용되는 인코딩을 가져오거나 설정합니다.Gets or sets the encoding used for the user-defined custom headers for this email message.

IsBodyHtml IsBodyHtml IsBodyHtml IsBodyHtml

전자 메일 메시지 본문의 형식이 HTML인지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating whether the mail message body is in HTML.

Priority Priority Priority Priority

이 이메일 메시지의 우선 순위를 가져오거나 설정합니다.Gets or sets the priority of this email message.

ReplyTo ReplyTo ReplyTo ReplyTo

전자 메일 메시지의 회신 주소를 가져오거나 설정합니다.Gets or sets the ReplyTo address for the mail message.

ReplyToList ReplyToList ReplyToList ReplyToList

메일 메시지의 회신 주소 목록을 가져옵니다.Gets the list of addresses to reply to for the mail message.

Sender Sender Sender Sender

이 이메일 메시지의 보낸 사람 주소를 가져오거나 설정합니다.Gets or sets the sender's address for this email message.

Subject Subject Subject Subject

이 이메일 메시지의 제목 줄을 가져오거나 설정합니다.Gets or sets the subject line for this email message.

SubjectEncoding SubjectEncoding SubjectEncoding SubjectEncoding

이 이메일 메시지의 제목 내용에 사용되는 인코딩을 가져오거나 설정합니다.Gets or sets the encoding used for the subject content for this email message.

To To To To

이 이메일 메시지의 받는 사람이 들어 있는 주소 컬렉션을 가져옵니다.Gets the address collection that contains the recipients of this email message.

메서드

Dispose() Dispose() Dispose() Dispose()

MailMessage에서 사용하는 모든 리소스를 해제합니다.Releases all resources used by the MailMessage.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

MailMessage에서 사용하는 관리되지 않는 리소스를 해제하고, 관리되는 리소스를 선택적으로 해제할 수 있습니다.Releases the unmanaged resources used by the MailMessage and optionally releases the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(Inherited from Object)

적용 대상