0

openpop を使用してメールを取得して処理しています。メールを処理する際に、添付ファイルをチェックして特定のフォルダーに保存しています。これは csv ファイルでは正常に機能しますが、何らかの理由で pdf の "att.Name" が null を返し、保存されません。

AttachmentCollection attachments = mailItem.Attachments;
foreach (Attachment att in attachments)
{
    using (var fileStream = new FileStream(conf.AttachmentSaveTo + att.Name,   FileMode.Create, FileAccess.Write))
    {
        att.ContentStream.CopyTo(fileStream);
    }
}

どんな助けでも大歓迎です。

4

1 に答える 1

0

生のメッセージにアクセスできない場合、PDF 添付ファイルの MIME ヘッダーでファイル名が指定されていない可能性があります。

生のメッセージ ソースを見る場合は、pdf 添付ファイルにContent-Dispositionヘッダーがあるかどうかを確認し、filenameパラメーターがあることを確認してください。

そうでない場合、Content-Typeヘッダーにはnameパラメーターがありますか?

これら 2 つのパラメーターのうち少なくとも 1 つが存在する場合、OpenPOP のバグを発見した可能性があります。その場合は、代わりに私のMailKitライブラリを使用することをお勧めします。

于 2016-03-10T20:15:23.573 に答える