我正在使用 mimekit 为我的项目接收和发送邮件。我正在发送已收到的邮件,并进行了一些修改(往返部分)。现在我需要在正文部分进行修改。我将用 asterix 字符替换特定的单词。每封邮件的特定文本都不同。邮件可以是任何格式。你可以看到我找到了我想要的东西,但我不知道如何在没有任何错误的情况下替换?
问问题
2453 次
1 回答
5
MimeMessage.Body
是一个树结构,如 MIME,因此您必须导航到MimePart
包含您要修改的内容的目录。
在这种情况下,由于您要修改 text/* MimePart
,它实际上将是MimePart
called的子类,TextPart
它具有.Text
属性(可写)。
我已经编写了有关如何遍历消息的 MIME 结构以在此处查找您要查找的部分的文档:http: //www.mimekit.org/docs/html/WorkingWithMessages.htm
一个非常简单的解决方案可能是:
var part = message.BodyParts.OfType<TextPart> ().FirstOrDefault ();
part.Text = part.Text.Replace ("x", "y");
但请记住,该逻辑假定您找到的第一个 text/* 部分就是您要查找的部分。
于 2016-01-14T23:35:42.927 回答