邮件附件没有附加

时间:2009-04-10 15:04:37

标签: c# .net email

我正在编写一个简单的电子邮件助手类,它将由Windows服务调用。当我测试时,电子邮件附件没有与剩下的电子邮件一起发送。

mailAttachmentFilePath是一个ArrayList(仅用于说明),mail表示MailMessage类。

if (mailAttachmentFilePath.Count > 0)
        {
            foreach (string file in mailAttachmentFilePath)
            {
                Attachment data = new Attachment(file);
                mail.Attachments.Add(data);
                data.Dispose();
            }
        }

我确信我错过了一些东西,但我不知道它是什么......

2 个答案:

答案 0 :(得分:5)

在发送电子邮件后执行data.Dispose():D。

答案 1 :(得分:2)

删除data.Dispose()。附件是通过引用添加的,因此当您调用dispose时,它实际上是释放附加文件。你也不需要if语句。试试这个:

    foreach (string file in mailAttachmentFilePath)
    {
        Attachment data = new Attachment(file);
        mail.Attachments.Add(data);
    }