MailKitで、メッセージの生の表現を取得するにはどうすればよいですか?

Ziv

MailFolder.Fetchを使用してIMAP経由でメッセージをダウンロードし、MailFolder.GetBodyPartを使用して関連する本文部分を取得しています。

処理された情報に加えて、MIMEメッセージの生の表現を取得することは可能ですか?

コード:

var query = CreateSearchQuery(startDate, endDate);
await mailFolder.OpenAsync(FolderAccess.ReadOnly);
var results = await mailFolder.SearchAsync(SearchOptions.All, query);
var messageSummaries = await mailFolder.FetchAsync(results.UniqueIds, DownloadFlags);

後で、パーツを実行し、htmlとプレーンパーツを見つけて、この質問に示すようにそれらをダウンロードすることにより、メッセージをダウンロードします(そうでないパーツのみをダウンロードしますIsAttachment==true)。

jstedfast

個々のMIMEパーツのみをダウンロードした場合、メッセージ全体の生の表現を取得することはできませんが(すべてのパーツをダウンロードてメッセージを再構築しない限り)、各MIMEパーツの生の表現を取得できます。から取得WriteTo()するそれぞれに存在するメソッドを使用してダウンロードするMimeEntityことMailFolder.GetBodyPart()

メッセージ全体の生の表現が必要な場合、それを取得する最も簡単な方法は、を使用してMailFolder.GetMessage()から、戻ってきWriteTo()メソッドを呼び出すMimeMessageことです。またはMailFolder.GetStream()、次の方法で使用できます

var raw = folder.GetStream (uid, string.Empty);

完全な生のメッセージが必要であることがわかっている場合は、帯域幅の浪費になるため、最初に個々のパーツをダウンロードしないことをお勧めします。を使用することにした場合は、解析されたオブジェクトにGetStream()ストリームをフィードしてMimeMessage.Load()戻すことができMimeMessageます。

注:このWriteTo()メソッドを使用する場合、生のメッセージまたは本文のデータを読み取りたい場合は、ストリーム内で0に戻ることを忘れないでください。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Linuxで生のメールメッセージを送信するにはどうすればよいですか?

分類Dev

MailkitでメッセージIDを使用してメッセージを取得するにはどうすればよいですか?

分類Dev

現在のユーザーと他のユーザーの間で最後のメッセージを取得するにはどうすればよいですか?

分類Dev

Flutterのfirestoreからメッセージのみを取得するにはどうすればよいですか?

分類Dev

json文字列で最近のメッセージを取得するにはどうすればよいですか

分類Dev

各会話の最後のメッセージを取得するにはどうすればよいですか?

分類Dev

logstashのログメッセージから番号を取得するにはどうすればよいですか?

分類Dev

JSON stringifyのエラーメッセージを取得するにはどうすればよいですか?

分類Dev

メッセージの言語を取得するにはどうすればよいですか?

分類Dev

「npmupdate」の進行状況メッセージを取得するにはどうすればよいですか?

分類Dev

送信されたメッセージのメッセージリンクをdiscordjsで取得するにはどうすればよいですか?

分類Dev

PythonでメールのメッセージIDを作成するにはどうすればよいですか?

分類Dev

送信されたメッセージのMAMメッセージIDを取得するにはどうすればよいですか?

分類Dev

smack のメッセージ ID からメッセージを取得するにはどうすればよいですか。

分類Dev

ANTの正規表現を使用してバージョン名のドット(。)の前の値を取得するにはどうすればよいですか?

分類Dev

別のジェネリック型の特性境界の型パラメーターで特性境界を表現するにはどうすればよいですか?

分類Dev

syntastic(vim)で特定のメッセージをオフにするにはどうすればよいですか?

分類Dev

正規表現で2つのマッチを取得するにはどうすればよいですか?

分類Dev

正規表現で2つのマッチを取得するにはどうすればよいですか?

分類Dev

現在のすべてのTODOメッセージをgitリポジトリに一覧表示するにはどうすればよいですか?

分類Dev

SQLで特定のユーザーの各会話で最新のメッセージを取得するにはどうすればよいですか?

分類Dev

cpからのエラーメッセージを抑制するにはどうすればよいですか?

分類Dev

Kafkaでメッセージのサイズを設定するにはどうすればよいですか?

分類Dev

gitで既存のタグメッセージを編集するにはどうすればよいですか?

分類Dev

Eloquentで高次のメッセージを使用するにはどうすればよいですか?

分類Dev

discord.pyで自分のメッセージを削除するにはどうすればよいですか?

分類Dev

OMNeT ++でメッセージの外観を変更するにはどうすればよいですか?

分類Dev

discord.jsのメッセージで番号を検出するにはどうすればよいですか?

分類Dev

Androidでメッセージの送信を変更するにはどうすればよいですか?

Related 関連記事

  1. 1

    Linuxで生のメールメッセージを送信するにはどうすればよいですか?

  2. 2

    MailkitでメッセージIDを使用してメッセージを取得するにはどうすればよいですか?

  3. 3

    現在のユーザーと他のユーザーの間で最後のメッセージを取得するにはどうすればよいですか?

  4. 4

    Flutterのfirestoreからメッセージのみを取得するにはどうすればよいですか?

  5. 5

    json文字列で最近のメッセージを取得するにはどうすればよいですか

  6. 6

    各会話の最後のメッセージを取得するにはどうすればよいですか?

  7. 7

    logstashのログメッセージから番号を取得するにはどうすればよいですか?

  8. 8

    JSON stringifyのエラーメッセージを取得するにはどうすればよいですか?

  9. 9

    メッセージの言語を取得するにはどうすればよいですか?

  10. 10

    「npmupdate」の進行状況メッセージを取得するにはどうすればよいですか?

  11. 11

    送信されたメッセージのメッセージリンクをdiscordjsで取得するにはどうすればよいですか?

  12. 12

    PythonでメールのメッセージIDを作成するにはどうすればよいですか?

  13. 13

    送信されたメッセージのMAMメッセージIDを取得するにはどうすればよいですか?

  14. 14

    smack のメッセージ ID からメッセージを取得するにはどうすればよいですか。

  15. 15

    ANTの正規表現を使用してバージョン名のドット(。)の前の値を取得するにはどうすればよいですか?

  16. 16

    別のジェネリック型の特性境界の型パラメーターで特性境界を表現するにはどうすればよいですか?

  17. 17

    syntastic(vim)で特定のメッセージをオフにするにはどうすればよいですか?

  18. 18

    正規表現で2つのマッチを取得するにはどうすればよいですか?

  19. 19

    正規表現で2つのマッチを取得するにはどうすればよいですか?

  20. 20

    現在のすべてのTODOメッセージをgitリポジトリに一覧表示するにはどうすればよいですか?

  21. 21

    SQLで特定のユーザーの各会話で最新のメッセージを取得するにはどうすればよいですか?

  22. 22

    cpからのエラーメッセージを抑制するにはどうすればよいですか?

  23. 23

    Kafkaでメッセージのサイズを設定するにはどうすればよいですか?

  24. 24

    gitで既存のタグメッセージを編集するにはどうすればよいですか?

  25. 25

    Eloquentで高次のメッセージを使用するにはどうすればよいですか?

  26. 26

    discord.pyで自分のメッセージを削除するにはどうすればよいですか?

  27. 27

    OMNeT ++でメッセージの外観を変更するにはどうすればよいですか?

  28. 28

    discord.jsのメッセージで番号を検出するにはどうすればよいですか?

  29. 29

    Androidでメッセージの送信を変更するにはどうすればよいですか?

ホットタグ

アーカイブ