system.net.mail.smtpclient有两种方法,我很困惑。
1。 SendAsync(MailMessage,Object)
将指定的电子邮件发送到SMTP服务器进行传送。此方法不阻止调用线程,并允许调用者将对象传递给操作完成时调用的方法。 -MSDN
2。 SendMailAsync(MAILMESSAGE)
将指定的消息发送到SMTP服务器作为异步操作进行传送。 -MSDN
请注意,两种方法的名称是不同的,因此它不是重载。这里有什么区别?
我正在寻找非常明确的答案,因为MSDN对于这两种方法的描述是非常模糊的(至少对我而言)。
解决方法
区别是一个SendMailAsync使用新的异步/等待技术,另一个使用旧的回调技术。更重要的是,当方法完成时,传递的对象在userState中被简单地传递给事件处理程序。