我最近正在查看一段使用System.Net.Mail.Attachment将文件附加到电子邮件的代码。当前的实现是将附件作为文件存储到存储设备并为其赋予唯一的名称。然后将该文件附加到MailMessage中,如下所示:
Attachment data = new Attachment(filename);
message.Attachments.Add(data);
然后发送电子邮件,然后从存储设备中删除文件。
将文件存储在 MemoryStream (它已经是)中然后将其作为附件传递给电子邮件不是更快/更好吗?我会想象在 MailMessage 类的某个地方,文件被读入流并以相同的方式发送,并且将其存储到磁盘的整个过程是完全没有必要的。
我的直觉...写入磁盘是完全不合理的,应该实现使用流。(我错了吗?)