SmtpClient.SendMailAsync 方法

定义

将指定的邮件以异步操作形式发送给 SMTP 服务器供传递。

重载

SendMailAsync(MailMessage)

将指定的邮件以异步操作形式发送给 SMTP 服务器供传递。

SendMailAsync(MailMessage, CancellationToken)

将指定的邮件以异步操作形式发送给 SMTP 服务器供传递。

SendMailAsync(String, String, String, String)

将指定的邮件以异步操作形式发送给 SMTP 服务器供传递。 使用 String 对象指定邮件的发件人、收件人、主题和邮件正文。

SendMailAsync(String, String, String, String, CancellationToken)

使用指定的发件人、收件人、主题和正文字符串,将指定的消息作为异步操作发送到 SMTP 服务器。

SendMailAsync(MailMessage)

将指定的邮件以异步操作形式发送给 SMTP 服务器供传递。

public:
 System::Threading::Tasks::Task ^ SendMailAsync(System::Net::Mail::MailMessage ^ message);
public System.Threading.Tasks.Task SendMailAsync (System.Net.Mail.MailMessage message);
member this.SendMailAsync : System.Net.Mail.MailMessage -> System.Threading.Tasks.Task
Public Function SendMailAsync (message As MailMessage) As Task

参数

message
MailMessage

一个包含要发送的邮件的 MailMessage

返回

表示异步操作的任务对象。

例外

messagenull

SmtpClient 还有另一个正在执行的发送操作。

- 或 -

ToCCBcc 属性中没有指定的收件人。

- 或 -

DeliveryMethod 属性设置为 Network,且 Hostnull

- 或 -

DeliveryMethod 属性设置为 NetworkHost 等于空字符串 ("")。

- 或 -

DeliveryMethod 属性被设为 NetworkPort 为零、负数或大于 65,535。

已释放此对象。

连接到 SMTP 服务器失败。

- 或 -

身份验证失败。

- 或 -

操作超时。

- 或 -

EnableSsl 设置为 true,但 DeliveryMethod 属性设置为 SpecifiedPickupDirectoryPickupDirectoryFromIis

- 或 -

EnableSsl 设置为 true,,但 SMTP 邮件服务器不在对 EHLO 命令的响应中播发 STARTTLS。

- 或 -

message 未能传递给 ToCCBcc 中的一个或多个收件人。

message 未能传递给 ToCCBcc 中的一个收件人。

message 未能传递给 ToCCBcc 中的两个或多个收件人。

注解

此操作不会阻止。 发送消息后,返回 Task 的对象将完成。

适用于

SendMailAsync(MailMessage, CancellationToken)

将指定的邮件以异步操作形式发送给 SMTP 服务器供传递。

public:
 System::Threading::Tasks::Task ^ SendMailAsync(System::Net::Mail::MailMessage ^ message, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task SendMailAsync (System.Net.Mail.MailMessage message, System.Threading.CancellationToken cancellationToken);
member this.SendMailAsync : System.Net.Mail.MailMessage * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Function SendMailAsync (message As MailMessage, cancellationToken As CancellationToken) As Task

参数

message
MailMessage

要发送的消息。

cancellationToken
CancellationToken

用于取消操作的取消令牌。

返回

表示异步操作的任务对象。

例外

messagenull

SmtpClient 还有另一个正在执行的发送操作。

Fromnull

- 或 -

ToCCBcc 属性中没有指定的收件人。

- 或 -

DeliveryMethod 属性设置为 Network,且 Hostnull

- 或 -

DeliveryMethod 属性设置为 NetworkHost 等于空字符串 ("")。

- 或 -

DeliveryMethod 属性被设为 NetworkPort 为零、负数或大于 65,535。

已释放此对象。

连接到 SMTP 服务器失败。

- 或 -

身份验证失败。

- 或 -

操作超时。

- 或 -

EnableSsl 设置为 true,但 DeliveryMethod 属性设置为 SpecifiedPickupDirectoryPickupDirectoryFromIis

- 或 -

EnableSsl 设置为 true,,但 SMTP 邮件服务器不在对 EHLO 命令的响应中播发 STARTTLS。

- 或 -

message 未能传递给 ToCCBcc 中的一个或多个收件人。

message 未能传递给 ToCCBcc 中的一个收件人。

message 未能传递给 ToCCBcc 中的两个或多个收件人。

取消令牌已取消。 此异常存储在返回的任务中。

注解

此操作不会阻止。 发送消息后,返回 Task 的对象将完成。

适用于

SendMailAsync(String, String, String, String)

将指定的邮件以异步操作形式发送给 SMTP 服务器供传递。 使用 String 对象指定邮件的发件人、收件人、主题和邮件正文。

public:
 System::Threading::Tasks::Task ^ SendMailAsync(System::String ^ from, System::String ^ recipients, System::String ^ subject, System::String ^ body);
public System.Threading.Tasks.Task SendMailAsync (string from, string recipients, string? subject, string? body);
public System.Threading.Tasks.Task SendMailAsync (string from, string recipients, string subject, string body);
member this.SendMailAsync : string * string * string * string -> System.Threading.Tasks.Task
Public Function SendMailAsync (from As String, recipients As String, subject As String, body As String) As Task

参数

from
String

一个包含邮件发件人的地址信息的 String

recipients
String

一个包含邮件收件人的地址的 String

subject
String

一个包含邮件主题行的 String

body
String

一个包含邮件正文的 String

返回

表示异步操作的任务对象。

例外

fromnull

recipientsnull

fromEmpty

recipientsEmpty

SmtpClient 还有另一个正在执行的发送操作。

Fromnull

- 或 -

DeliveryMethod 属性设置为 Network,且 Hostnull

- 或 -

DeliveryMethod 属性设置为 NetworkHost 等于空字符串 ("")。

- 或 -

DeliveryMethod 属性被设为 NetworkPort 为零、负数或大于 65,535。

已释放此对象。

连接到 SMTP 服务器失败。

- 或 -

身份验证失败。

- 或 -

操作超时。

- 或 -

EnableSsl 设置为 true,但 DeliveryMethod 属性设置为 SpecifiedPickupDirectoryPickupDirectoryFromIis

- 或 -

EnableSsl 设置为 true,,但 SMTP 邮件服务器不在对 EHLO 命令的响应中播发 STARTTLS。

- 或 -

message 未能传递给 ToCCBcc 中的一个或多个收件人。

message 未能传递给 ToCCBcc 中的一个收件人。

message 未能传递给 ToCCBcc 中的两个或多个收件人。

注解

此操作不会阻止。 发送消息后,返回 Task 的对象将完成。

适用于

SendMailAsync(String, String, String, String, CancellationToken)

使用指定的发件人、收件人、主题和正文字符串,将指定的消息作为异步操作发送到 SMTP 服务器。

public:
 System::Threading::Tasks::Task ^ SendMailAsync(System::String ^ from, System::String ^ recipients, System::String ^ subject, System::String ^ body, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task SendMailAsync (string from, string recipients, string? subject, string? body, System.Threading.CancellationToken cancellationToken);
member this.SendMailAsync : string * string * string * string * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Function SendMailAsync (from As String, recipients As String, subject As String, body As String, cancellationToken As CancellationToken) As Task

参数

from
String

邮件发件人的地址信息。

recipients
String

邮件收件人的地址。

subject
String

消息的主题行。

body
String

消息正文。

cancellationToken
CancellationToken

用于取消操作的取消令牌。

返回

表示异步操作的任务对象。

例外

fromnull

recipientsnull

fromEmpty

recipientsEmpty

SmtpClient 还有另一个正在执行的发送操作。

- 或 -

DeliveryMethod 属性设置为 Network,且 Hostnull

- 或 -

DeliveryMethod 属性设置为 NetworkHost 等于空字符串 ("")。

- 或 -

DeliveryMethod 属性被设为 NetworkPort 为零、负数或大于 65,535。

已释放此对象。

连接到 SMTP 服务器失败。

- 或 -

身份验证失败。

- 或 -

操作超时。

- 或 -

EnableSsl 设置为 true,但 DeliveryMethod 属性设置为 SpecifiedPickupDirectoryPickupDirectoryFromIis

- 或 -

EnableSsl 设置为 true,,但 SMTP 邮件服务器不在对 EHLO 命令的响应中播发 STARTTLS。

- 或 -

message 未能传递给 ToCCBcc 中的一个或多个收件人。

message 未能传递给 ToCCBcc 中的一个收件人。

message 未能传递给 ToCCBcc 中的两个或多个收件人。

取消令牌已取消。 此异常存储在返回的任务中。

注解

此操作不会阻止。 发送消息后,返回 Task 的对象将完成。

适用于