MailMessage 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
SmtpClient 클래스를 사용하여 보낼 수 있는 이메일 메시지를 나타냅니다.
public ref class MailMessage : IDisposable
public class MailMessage : IDisposable
type MailMessage = class
interface IDisposable
Public Class MailMessage
Implements IDisposable
- 상속
-
MailMessage
- 구현
예제
다음 코드 예제에서는 첨부 파일이 포함된 전자 메일 메시지를 만들고 보내는 방법을 보여 줍니다.
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();
}
Public Shared Sub CreateMessageWithAttachment(ByVal server As String)
' Specify the file to be attached And sent.
' This example assumes that a file named Data.xls exists in the
' current working directory.
Dim file As String = "data.xls"
' Create a message and set up the recipients.
Dim message As MailMessage = New MailMessage(
"jane@contoso.com",
"ben@contoso.com",
"Quarterly data report.",
"See the attached spreadsheet.")
' Create the file attachment for this email message.
Dim data As Attachment = New Attachment(file, MediaTypeNames.Application.Octet)
' Add time stamp information for the file.
Dim disposition As ContentDisposition = 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
Dim client As SmtpClient = New SmtpClient(server)
' Add credentials if the SMTP server requires them.
client.Credentials = CredentialCache.DefaultNetworkCredentials
Try
client.Send(message)
Catch ex As Exception
Console.WriteLine("Exception caught in CreateMessageWithAttachment(): {0}", ex.ToString())
End Try
' Display the values in the ContentDisposition for the attachment.
Dim cd As ContentDisposition = 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)
For Each d As DictionaryEntry In cd.Parameters
Console.WriteLine("{0} = {1}", d.Key, d.Value)
Next
data.Dispose()
End Sub
설명
클래스의 MailMessage 인스턴스는 클래스를 사용하여 SmtpClient 배달을 위해 SMTP 서버로 전송되는 전자 메일 메시지를 생성하는 데 사용됩니다.
전자 메일 메시지의 보낸 사람, 받는 사람, 제목 및 본문은 가 개체를 초기화하는 MailMessage 데 사용될 때 MailMessage 매개 변수로 지정할 수 있습니다. 이러한 매개 변수는 개체의 MailMessage 속성을 사용하여 설정하거나 액세스할 수도 있습니다.
메시지의 기본 메일 메시지 헤더 및 요소는 클래스의 MailMessage 다음 속성을 사용하여 설정할 수 있습니다.
메일 머리글 또는 부분 | 속성 |
---|---|
Attachments | Attachments |
BCC(블라인드 카본) | Bcc |
CC(탄소 복사본) | CC |
콘텐츠 형식 | BodyEncoding |
사용자 지정 헤더에 대한 인코딩 | HeadersEncoding |
메시지 본문 | Body |
우선 순위 | Priority |
받는 사람 | To |
Reply-To | ReplyToList |
보낸 사람 | From |
주체 | Subject |
합니다 MailMessage 클래스에서는 사용 하 여 메시지 헤더 컬렉션에 액세스 하려면 애플리케이션을 Headers 속성입니다. 이 컬렉션은 읽기 전용이지만(새 컬렉션을 설정할 수 없음) 이 컬렉션에서 사용자 지정 헤더를 추가하거나 삭제할 수 있습니다. 추가된 모든 사용자 지정 헤더는 instance 전송될 때 MailMessage 포함됩니다. 메시지를 보내기 전에 속성에서 이 컬렉션 Headers 에 특별히 추가된 헤더만 컬렉션에 포함됩니다. MailMessage instance 보낸 Headers 후 속성에는 클래스의 MailMessage 연결된 속성을 사용하여 설정된 헤더 또는 가 개체를 초기화하는 MailMessage 데 사용될 때 MailMessage 전달되는 매개 변수도 포함됩니다.
일부 메일 머리글의 형식이 잘못된 경우 메일 메시지가 손상될 수 있습니다. 따라서 클래스의 속성을 사용하여 설정할 수 있는 헤더 컬렉션의 MailMessage 모든 메일 헤더는 클래스 속성을 사용 MailMessage 하거나 개체를 초기화 MailMessage 할 때 MailMessage 전달된 매개 변수로만 설정해야 합니다. 다음 메일 머리글 목록은 속성을 사용하여 Headers 추가하면 안 되며, 메시지를 보낼 때 속성을 사용하여 Headers 이러한 헤더에 대해 설정된 값은 삭제되거나 덮어쓰여집니다.
Bcc
Cc
Content-ID
콘텐츠-위치
Content-Transfer-Encoding
콘텐츠 형식
날짜
시작
중요도
MIME-Version
우선 순위
Reply-To
보낸 사람
대상
X 우선 순위
애플리케이션이 사용 하 여 X-보낸 사람 헤더를 지정 하지 않은 경우는 Headers 속성을 MailMessage 클래스 만들어집니다 메시지를 보낼 때.
사용 된 AlternateViews 다양 한 형식의 전자 메일 메시지의 복사본을 지정 하는 속성입니다. 예를 들어 HTML로 메시지를 보내는 경우 일부 받는 사람이 HTML 콘텐츠를 표시할 수 없는 전자 메일 읽기 프로그램을 사용하는 경우 일반 텍스트 버전을 제공할 수도 있습니다. 대체 뷰를 사용하여 메시지를 만드는 방법을 보여 주는 예제는 를 참조하세요 AlternateViews.
사용 된 Attachments 전자 메일 메시지에 첨부 파일을 추가 하는 속성입니다. 첨부 파일을 사용하여 메시지를 만드는 방법을 보여 주는 예제는 를 참조하세요 Attachments. MailMessage에서 Dispose를 호출하면 참조된 각 첨부 파일에서도 Dispose를 호출합니다.
전자 메일 메시지를 어셈블한 후 또는 SendAsync 메서드를 Send 사용하여 보낼 수 있습니다.
생성자
MailMessage() |
MailMessage 클래스의 빈 인스턴스를 초기화합니다. |
MailMessage(MailAddress, MailAddress) |
지정된 MailMessage 클래스 개체를 사용하여 MailAddress 클래스의 새 인스턴스를 초기화합니다. |
MailMessage(String, String) |
지정된 MailMessage 클래스 개체를 사용하여 String 클래스의 새 인스턴스를 초기화합니다. |
MailMessage(String, String, String, String) |
MailMessage 클래스의 새 인스턴스를 초기화합니다. |
속성
AlternateViews |
메시지 본문의 대체 형식을 저장하는 데 사용되는 첨부 파일 컬렉션을 가져옵니다. |
Attachments |
이 이메일 메시지에 첨부된 데이터를 저장하는 데 사용되는 첨부 파일 컬렉션을 가져옵니다. |
Bcc |
이 이메일 메시지의 BCC(숨은 참조) 받는 사람이 들어 있는 주소 컬렉션을 가져옵니다. |
Body |
메시지 본문을 가져오거나 설정합니다. |
BodyEncoding |
메시지 본문을 인코딩하는 데 사용되는 인코딩을 가져오거나 설정합니다. |
BodyTransferEncoding |
메시지 본문을 인코딩하는 데 사용되는 전송 인코딩을 가져오거나 설정합니다. |
CC |
이 이메일 메시지의 CC(참조) 받는 사람이 들어 있는 주소 컬렉션을 가져옵니다. |
DeliveryNotificationOptions |
이 이메일 메시지의 배달 알림을 가져오거나 설정합니다. |
From |
이 이메일 메시지의 보낸 사람 주소를 가져오거나 설정합니다. |
Headers |
이 이메일 메시지와 함께 전송되는 이메일 헤더를 가져옵니다. |
HeadersEncoding |
이 이메일 메시지의 사용자 정의된 사용자 지정 헤더에 사용되는 인코딩을 가져오거나 설정합니다. |
IsBodyHtml |
전자 메일 메시지 본문의 형식이 HTML인지 여부를 나타내는 값을 가져오거나 설정합니다. |
Priority |
이 이메일 메시지의 우선 순위를 가져오거나 설정합니다. |
ReplyTo |
사용되지 않음.
사용되지 않음.
사용되지 않음.
전자 메일 메시지의 회신 주소를 가져오거나 설정합니다. |
ReplyToList |
메일 메시지의 회신 주소 목록을 가져옵니다. |
Sender |
이 이메일 메시지의 보낸 사람 주소를 가져오거나 설정합니다. |
Subject |
이 이메일 메시지의 제목 줄을 가져오거나 설정합니다. |
SubjectEncoding |
이 이메일 메시지의 제목 내용에 사용되는 인코딩을 가져오거나 설정합니다. |
To |
이 이메일 메시지의 받는 사람이 들어 있는 주소 컬렉션을 가져옵니다. |
메서드
Dispose() |
MailMessage에서 사용하는 모든 리소스를 해제합니다. |
Dispose(Boolean) |
MailMessage에서 사용하는 관리되지 않는 리소스를 해제하고, 관리되는 리소스를 선택적으로 해제할 수 있습니다. |
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
적용 대상
.NET