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

时间:2009-06-24 17:03:54

标签: c# smtpclient email-attachments

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

myMail.Attachments.Add(new Attachment(attachmentFileName));

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

3 个答案:

答案 0 :(得分:16)

请参阅Attachment.Name Property

  

获取或设置与此附件关联的内容类型中的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);

答案 1 :(得分:1)

使用所需名称将附件保存到临时文件夹,然后将其附加。发送电子邮件后不要忘记删除它,这样临时文件夹不会变得太大。

编辑:接受的答案要好得多,但是我会把这个留给那些走在同一思路上的人,看看它有多么错误。

答案 2 :(得分:0)

You can use this constructor for Attachment