正在试图异步发送一封电子邮件,附件使用.NET的SMPTClient类:错误发送邮件异步
SmtpClient smtp = new SmtpClient(MailServer);
smtp.SendAsync(mailMsg, "");
smtp.SendCompleted += new SendCompletedEventHandler(MailSentCallback);
mailMsg.Dispose();
我需要尽快将邮件发送成功从我的服务器删除附件文件。
private static void MailSentCallback(object sender, AsyncCompletedEventArgs e)
{
File.Delete(myAttachment);
}
但是,当这种方法被调用时,我得到一个错误: “该进程无法访问该文件‘myAttachment’,因为它正被另一个进程使用。” 此外,邮件不被传递。如果我使用发送方法而不是SendAsync,则邮件传递正在工作。
我在这里失踪了什么?
感谢您的阅读!
谢谢jerryjvl ...!我现在使用MemoryStream并将它附加到邮件消息上......没有任何“文件正在被其他进程使用”的错误的作品...再次感谢! – 2009-06-05 01:41:49