使用以下代码将winmail.dat文件的rtf正文添加为已保存的电子邮件的附件而不是正文:
BodyParts
我该如何解决这个问题?
查看int b = 1;
foreach (MimeKit.MimeEntity bodyPart in tnefMessage.BodyParts)
{
if (!bodyPart.IsAttachment)
{
bodyPart.WriteTo(path + $"_bodyPart{b++}.{bodyPart.ContentType.MediaSubtype}");
}
}
它不存在,但附件和body.rtf文件存在于.cartelement{position: relative;float: right;background: url(../images/cart.jpg) center center no-repeat#6B1682;font-size: 0px;width: 55px;}
.cartelement.mobile{ position: absolute; right:0; top: 0; background: url(../images/cart.jpg) center center no-repeat#6B1682; font-size: 0px; width: 55px; padding-top:10px; }
.cartelement a{ color: #fff; font-size: 0px !important; height: 54px; width: 55px; float: left;}
.cartelement a:hover{color: #fff !important;}
中。所以我可以像这样得到body.rtf文件:
BEGIN
旁注:body.rtf文件不是真rtf,因为它以下列内容开头:
Content-Type:text / rtf;名称= body.rtf
(新行)
答案 0 :(得分:1)
您获得Content-Type
标头的原因是您正在编写MIME信封以及内容。
您需要做的是:
int b = 1;
foreach (MimeKit.MimeEntity bodyPart in tnefMessage.BodyParts)
{
if (!bodyPart.IsAttachment)
{
var mime = (MimeKit.MimePart) bodyPart;
mime.ContentObject.DecodeTo(path + $"_bodyPart{b++}.{bodyPart.ContentType.MediaSubtype}");
}
}