如何使用Attachment和LinkedResource指定Content-Type Name和Content-Disposition Filename?

时间:2011-01-30 18:16:42

标签: .net content-type system.net.mail content-disposition

使用System.Net.Mail.Attachment和System.Net.Mail.LinkedResource生成的电子邮件包含MIME部分。问题是如何为这些MIME部分中的标题指定Content-Type Name和Content-Disposition Filename值和编码。

附件,内容类型名称:

可以使用Attachment.Name属性或ContentType.Name属性指定值。这两个属性是同义的还是更好地使用一个优先于另一个?如果它们是同义词,那么为什么Attachment.Name属性存在?假设可以使用Attachment.NameEncoding属性指定编码,但为什么没有相应的ContentType.NameEncoding属性?

附件,内容处置文件名:

显然使用ContentDisposition.Filename属性指定了值,但是如何指定编码?

LinkedResource,内容类型名称:

只能使用ContentType.Name属性指定值,但如何指定编码?另外,如果有一个很好的理由有一个Attachment.Name属性,那么为什么没有相应的LinkedResource.Name属性?

LinkedResource,Content-Disposition文件名:

LinkedResource没有ContentDisposition,那么如何指定值或编码?

1 个答案:

答案 0 :(得分:0)

这可能遵循与HTTP相同的约定。

名为charset的编码在Content-Type中定义如下:

 Content-Type: text/plain; charset=utf-8

请注意charset之前的空格,这是标准的一部分。

使用附件的Content-Disposition来指定文件名。