如何修改消息体 - Mimekit消息

Erc*_*kar 5 c# email message mailkit mimekit

我正在使用mimekit接收和发送我的项目的邮件.我发送收到的邮件进行了一些修改(来自和来自部分).现在我需要修改身体部分.我将用asterix字符替换特定的单词.每封邮件的具体文字不同.邮件可以是任何格式.你可以看到我找到了我想要的但我不知道如何更换没有任何错误?

在此输入图像描述

jst*_*ast 5

MimeMessage.Body是一个树结构,如MIME,因此您必须导航到MimePart包含您要修改的内容.

在这种情况下,由于你想修改一个text/*MimePart,它实际上是被MimePart调用的子类,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");
Run Code Online (Sandbox Code Playgroud)

但请记住,该逻辑假定您找到的第一个text/*部分是您正在寻找的部分.