SmtpClient.Send 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
배달을 위해 SMTP 서버로 전자 메일 메시지를 보냅니다. 이러한 메서드는 메시지가 전송되는 동안 차단됩니다.
오버로드
| Name | Description |
|---|---|
| Send(MailMessage) |
배달을 위해 지정된 메시지를 SMTP 서버로 보냅니다. |
| Send(String, String, String, String) |
배달을 위해 지정된 전자 메일 메시지를 SMTP 서버로 보냅니다. 메시지 보낸 사람, 받는 사람, 제목 및 메시지 본문은 개체를 사용하여 String 지정됩니다. |
Send(MailMessage)
- Source:
- SmtpClient.cs
- Source:
- SmtpClient.cs
- Source:
- SmtpClient.cs
- Source:
- SmtpClient.cs
- Source:
- SmtpClient.cs
배달을 위해 지정된 메시지를 SMTP 서버로 보냅니다.
public:
void Send(System::Net::Mail::MailMessage ^ message);
public void Send(System.Net.Mail.MailMessage message);
member this.Send : System.Net.Mail.MailMessage -> unit
Public Sub Send (message As MailMessage)
매개 변수
- message
- MailMessage
MailMessage 보낼 메시지가 들어 있는 A입니다.
예외
message은 null입니다.
이 SmtpClient 작업에는 이미 진행 중인 다른 보내기 작업이 있습니다.
-또는-
From은 null입니다.
-또는-
및 CCBcc 속성에 To지정된 받는 사람이 없습니다.
-또는-
DeliveryMethod속성이 설정 Network 되고 Hostnull
-또는-
DeliveryMethod 속성이 설정 Network 되고 빈 문자열("")과 Host 같습니다.
-또는-
DeliveryMethod 속성이 0, 음수 또는 65,535보다 큰 값 NetworkPort 으로 설정됩니다.
이 개체가 삭제되었습니다.
SMTP 서버에 대한 연결이 실패했습니다.
-또는-
인증에 실패했습니다.
-또는-
작업 시간이 초과되었습니다.
-또는-
EnableSsl가 설정 true 되었지만 속성이 DeliveryMethod 설정되거나 PickupDirectoryFromIis.로 SpecifiedPickupDirectory 설정됩니다.
-또는-
EnableSsl 가 설정 true, 되었지만 SMTP 메일 서버가 EHLO 명령에 대한 응답으로 STARTTLS를 보급하지 않았습니다.
예제
다음 코드 예제에서는 이 메서드를 사용하는 방법을 보여 줍니다.
public static void CreateTestMessage2(string server)
{
string to = "jane@contoso.com";
string from = "ben@contoso.com";
MailMessage message = new MailMessage(from, to);
message.Subject = "Using the new SMTP client.";
message.Body = @"Using this new feature, you can send an email message from an application very easily.";
SmtpClient client = new SmtpClient(server);
// Credentials are necessary if the server requires the client
// to authenticate before it will send email on the client's behalf.
client.UseDefaultCredentials = true;
try
{
client.Send(message);
}
catch (Exception ex)
{
Console.WriteLine("Exception caught in CreateTestMessage2(): {0}",
ex.ToString());
}
}
설명
이 메서드는 전자 메일이 전송되는 동안 차단됩니다. 지정된 시간이 경과한 후 메서드가 반환되도록 속성을 사용하여 Timeout 제한 시간 값을 지정할 수 있습니다.
이 메서드를 HostPort 호출하기 전에 관련 속성을 설정하거나 이 정보를 SmtpClient(String, Int32) 생성자에 전달하여 구성 파일을 통해 속성을 설정해야 합니다.
비동기적으로 전송되는 메시지가 있는 경우 이 메서드를 호출할 수 없습니다.
SMTP 호스트에 자격 증명이 필요한 경우 이 메서드를 호출하기 전에 설정해야 합니다. 자격 증명을 UseDefaultCredentials 지정하려면 해당 또는 Credentials 속성을 사용합니다.
예외가 SmtpException 발생하면 속성을 확인 StatusCode 하여 작업이 실패한 이유를 찾습니다. 작업에 SmtpException 실패한 이유를 나타내는 내부 예외도 포함될 수 있습니다.
여러 받는 사람에게 전자 메일을 Send 보낼 때 SMTP 서버는 일부 받는 사람을 유효한 것으로 수락하고 다른 Send 받는 사람을 거부하고 수락된 받는 사람에게 전자 메일을 보낸 다음 SmtpFailedRecipientsException throw됩니다(또는 SmtpFailedRecipientException 받는 사람 한 명만 거부된 경우). A SmtpFailedRecipientsException 에는 거부된 받는 사람 목록이 포함됩니다.
메모
속성이 EnableSsl 설정true되고 SMTP 메일 서버가 EHLO 명령에 대한 응답으로 STARTTLS를 보급하지 않는 경우 또는 SendAsync 메서드에 Send 대한 호출이 throwSmtpException됩니다.
적용 대상
Send(String, String, String, String)
- Source:
- SmtpClient.cs
- Source:
- SmtpClient.cs
- Source:
- SmtpClient.cs
- Source:
- SmtpClient.cs
- Source:
- SmtpClient.cs
배달을 위해 지정된 전자 메일 메시지를 SMTP 서버로 보냅니다. 메시지 보낸 사람, 받는 사람, 제목 및 메시지 본문은 개체를 사용하여 String 지정됩니다.
public:
void Send(System::String ^ from, System::String ^ recipients, System::String ^ subject, System::String ^ body);
public void Send(string from, string recipients, string? subject, string? body);
public void Send(string from, string recipients, string subject, string body);
member this.Send : string * string * string * string -> unit
Public Sub Send (from As String, recipients As String, subject As String, body As String)
매개 변수
예외
이 SmtpClient 작업에는 이미 진행 중인 다른 보내기 작업이 있습니다.
-또는-
DeliveryMethod속성이 설정 Network 되고 Hostnull
-또는-
DeliveryMethod 속성이 설정 Network 되고 빈 문자열("")과 Host 같습니다.
-또는-
DeliveryMethod 속성이 0, 음수 또는 65,535보다 큰 값 NetworkPort 으로 설정됩니다.
이 개체가 삭제되었습니다.
SMTP 서버에 대한 연결이 실패했습니다.
-또는-
인증에 실패했습니다.
-또는-
작업 시간이 초과되었습니다.
-또는-
EnableSsl가 설정 true 되었지만 속성이 DeliveryMethod 설정되거나 PickupDirectoryFromIis.로 SpecifiedPickupDirectory 설정됩니다.
-또는-
EnableSsl 가 설정 true, 되었지만 SMTP 메일 서버가 EHLO 명령에 대한 응답으로 STARTTLS를 보급하지 않았습니다.
설명
이 메서드는 전자 메일이 전송되는 동안 차단됩니다. 지정된 시간이 경과한 후 메서드가 반환되도록 속성을 사용하여 Timeout 제한 시간 값을 지정할 수 있습니다.
이 메서드를 HostPort 호출하기 전에 관련 속성을 설정하거나 이 정보를 SmtpClient(String, Int32) 생성자에 전달하여 구성 파일을 통해 속성을 설정해야 합니다.
비동기적으로 전송되는 메시지가 있는 경우 이 메서드를 호출할 수 없습니다.
SMTP 호스트에 자격 증명이 필요한 경우 이 메서드를 호출하기 전에 설정해야 합니다. 자격 증명을 UseDefaultCredentials 지정하려면 해당 또는 Credentials 속성을 사용합니다.
예외가 SmtpException 발생하면 속성을 확인 StatusCode 하여 작업이 실패한 이유를 찾습니다. 작업에 SmtpException 실패한 이유를 나타내는 내부 예외도 포함될 수 있습니다.
여러 받는 사람에게 전자 메일을 Send 보낼 때 SMTP 서버는 일부 받는 사람을 유효한 것으로 수락하고 다른 Send 받는 사람을 거부하고 수락된 받는 사람에게 전자 메일을 보낸 다음 SmtpFailedRecipientsException throw됩니다(또는 SmtpFailedRecipientException 받는 사람 한 명만 거부된 경우). A SmtpFailedRecipientsException 에는 거부된 받는 사람 목록이 포함됩니다.
메모
속성이 EnableSsl 설정true되고 SMTP 메일 서버가 EHLO 명령에 대한 응답으로 STARTTLS를 보급하지 않는 경우 또는 SendAsync 메서드에 Send 대한 호출이 throwSmtpException됩니다.