ASP.NET中的SendAsync(异步电子邮件)和事件处理程序/生命周期?

从ASP.NET页面发送Async电子邮件我不明白的一件事是,当我们调用SendAsync时,它应该在一个单独的线程上执行,这样无论发送多长时间,我们的页面都可以继续执行流程并完成响应。

  1. 那么我们如何使用SendCompletedEventHandler在同一页面SendCompletedEventHandler调用方法? 到那时候页面对象可能不存在,在这个论坛中有人们这样做的例子。

  2. 我的期望是我可以有单独的类,它可能有静态方法,我将在SendCompletedEventHandler执行,这样我们就可以报告可能的错误。 但是,当我在那里引发exception时,exception作为页面响应的一部分出现。 所以对我而言,它看起来像SendAsync在同一个线程上工作,页面等待它被执行,并返回有关它引发的任何错误的信息。

它应该是怎么回事? 那么Async的含义是什么呢?

完全糊涂……任何人都可以帮忙吗?

更新:找到一个帮助我很多的post这里是链接

因为处理程序是静态的,所以它不需要页面对象仍然存在,因为它不使用或依赖于对象状态。 当需要调用callbackhandler时,可以调用该方法,而不必担心原始对象不存在。