使用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,那么如何指定值或编码?
答案 0 :(得分:0)
这可能遵循与HTTP相同的约定。
名为charset的编码在Content-Type中定义如下:
Content-Type: text/plain; charset=utf-8
请注意charset之前的空格,这是标准的一部分。
使用附件的Content-Disposition来指定文件名。