如何为电子邮件(System.Net.Mail.SmtpClient)附件设置一个好名称

Bra*_*uce 6 c# smtpclient email-attachments

我在C#中使用System.Net.Mail.SmtpClient发送附件.
附件名称与我传递给附件构造函数的文件名相同

myMail.Attachments.Add(new Attachment(attachmentFileName));
Run Code Online (Sandbox Code Playgroud)

我如何设置附件的"好"名称?我当前拥有的名称基本上是数字ID,表示附加了哪个报告.我的用户正在寻找更友好的东西,比如"results.xls".

gim*_*mel 16

请参见Attachment.Name属性:

获取或设置与此附件关联的内容类型中的MIME内容类型名称值.

您可以将Attachment .Name属性设置为您喜欢的任何内容.在最后一个链接的示例中,您可以:

// Create  the file attachment for this e-mail message.
Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
data.Name = "VeryNiceName.dat"; //(not in original example)
...
message.Attachments.Add(data);
Run Code Online (Sandbox Code Playgroud)