使用System.Web.Mail在C#中设置电子邮件附件名称
作者:互联网
我添加这样的附件:
System.Web.Mail.MailAttachment attachment = new System.Web.Mail.MailAttachment(AttachmentPath);
System.Web.Mail.MailMessage mailMsg = new System.Web.Mail.MailMessage();
....
mailMsg.Attachments.Add(attachment);
但是我想附加一个不同的名称,实际的文件名非常长且令人困惑,因为它是一个临时文件.我希望附加诸如“ SalesOrderNo1.pdf”之类的文件,是否有一种简单的方法而不必制作文件副本,而文件名冲突的风险很高?
(我无法使用System.Net.Mail,因为我必须与使用隐式SSL的服务器连接,但System.Net.Mail不支持它.)
解决方法:
您将不得不重命名该文件.如果要避免文件名冲突,可以始终有一个temp文件夹,将文件复制到其中并在其中重命名.然后将此新文件附加到您的电子邮件,发送电子邮件,无论发送成功与否,请在方法末尾删除该文件.
无论如何,在用电子邮件发送完附件后将其删除可能是个好习惯,除非您出于某种审计目的而需要保留文件,否则无论如何.
标签:email-attachments,email,c 来源: https://codeday.me/bug/20191029/1959715.html