6

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

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

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

4

3 回答 3

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);
于 2009-06-24T17:19:24.587 回答
1

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

编辑:接受的答案要好得多,但我会把这个留给其他走同样思路的人,看看它有多么错误。

于 2009-06-24T17:05:37.740 回答
0

您可以将此构造函数用于附件

于 2009-06-24T19:20:11.377 回答