1

次のメソッドを使用して、MemoryStream から添付ファイルを作成しています。

public void AddAttachment(Stream stream, string filename, string mimeType)
{
  byte[] buffer = ((MemoryStream) stream).GetBuffer();
  Attachment attachment = new Attachment(stream, filename, mimeType);
  _mail.Attachments.Add(attachment);
}

添付機能には最初の行は必要ないことに注意してください。デバッグ中に byte[] を手元に置いておくと、その大きさを確認できるので便利です。(通常、約 80,000 の要素があります。)

コードは正常に実行され、電子メールが送信されます。Outlook が電子メールを受信すると、受信トレイに添付ファイルの記号が表示されますが、電子メールに移動すると、添付ファイルはありません。

残念ながら、メールサーバーにアクセスして、添付ファイルの外観やサイズなど、メールに関する詳細を確認することはできません。

MemoryStream 引数のどのプロパティが添付ファイルに対して何らかの方法で無効であるかを教えてくれる人はいますか? または、私が試すことができる何か他のことを考えますか?

ありがとうございました。

デビッド

4

1 に答える 1

2

コンテンツを書き込んだ後、メモリ ストリームの位置を 0 にリセットしましたか?

于 2010-06-10T12:51:49.050 に答える