首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用MailKit,具有unicode文件名的附件在Outlook中显示为“无标题附件”

使用MailKit,具有unicode文件名的附件在Outlook中显示为“无标题附件”
EN

Stack Overflow用户
提问于 2015-11-09 03:24:18
回答 1查看 1.3K关注 0票数 3

我们在应用程序中使用MailKit向用户发送电子邮件。这些电子邮件通常包含带有Unicode或长文件名的附件。某些电子邮件客户端,如Outlook (使用POP或IMAP时)或Outlook Express,无法处理RFC 2231,结果是附件的名称为“无标题附件”。

有没有办法(使用MailKit)为附件文件名发送支持RFC2047(编码字)的邮件?一种可能的解决方案是将RFC2231保留在content-disposition中的filename中,但使用content-type中的encoded word编码名称参数作为备用参数。这样的东西受支持吗?

EN

回答 1

Stack Overflow用户

发布于 2015-12-11 05:59:52

我刚刚在MimeKit中添加了对使用rfc2047编码的支持。

现在有两种方法可以控制用于参数值的编码方法。

第一种方法是在每个单独的Parameter上设置编码方法

代码语言:javascript
复制
param.EncodingMethod = ParameterEncodingMethod.Rfc2047;

第二种方法是在用于写出消息和/或MIME部分的FormatOptions上设置默认参数编码方法:

代码语言:javascript
复制
var options = FormatOptions.Default.Clone ();
options.ParameterEncodingMethod = ParameterEncodingMethod.Rfc2047;

message.WriteTo (options, stream);

我会尝试很快发布一个新的MimeKit 1.3.0-beta3到nuget,并提供这个特性。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33598022

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档