MimeMessage 获取附件名称
Posted
技术标签:
【中文标题】MimeMessage 获取附件名称【英文标题】:MimeMessage Get Attachment Name 【发布时间】:2020-02-20 06:51:54 【问题描述】:我可以知道如何在 MimeMessage 中获取附件的名称吗?
我找不到attachment
的name
属性。
下面是我的代码 sn-p。
MimeMessage eml = MimeMessage.Load(savedEmlFullFilePath);
EmailMessage mail = new EmailMessage(service);
foreach (var attachment in eml.Attachments)
using (var stream = File.Create(AppConfig.EmailSaveFilePath + "attachment_from_email"))
if (attachment is MessagePart)
var part = (MessagePart)attachment;
part.Message.WriteTo(stream);
mail.Attachments.AddFileAttachment(AppConfig.EmailSaveFilePath + "attachment_from_email");
else
var part = (MimePart)attachment;
part.Content.DecodeTo(stream);
mail.Attachments.AddFileAttachment(AppConfig.EmailSaveFilePath + "attachment_from_email");
【问题讨论】:
【参考方案1】:MimePart
有一个您可以使用的 FileName
属性。
MessagePart
s 通常没有文件名,但如果有,你应该可以使用这样的逻辑来获取它:
string fileName = msgPart.ContentDisposition?.FileName ?? msgPart.ContentType.Name;
【讨论】:
以上是关于MimeMessage 获取附件名称的主要内容,如果未能解决你的问题,请参考以下文章
将 MimeMessage 对象消息转发为 EML 文件中附件的常规转发格式