5

プロジェクトのメールの送受信に mimekit を使用しています。受信したメールに一部変更を加えて送信しています (to & from parts)。そして今、ボディセクションを変更する必要があります。特定の単語をアスタリスク文字に置き換えます。メールごとに異なる特定のテキスト。メールはどのような形式でもかまいません。欲しいものが見つかったのはわかりますが、エラーなしで置き換える方法がわかりません。

ここに画像の説明を入力

4

1 に答える 1

5

MimeMessage.Bodyは MIME のようなツリー構造であるため、MimePart変更するコンテンツを含む に移動する必要があります。

この場合、 text/* を変更したいので、MimePart実際には、プロパティ (書き込み可能) を持つMimePartcalledのサブクラスになります。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 に答える