OpenXML 2 を使用して作成された Excel ファイルがあり、電子メールの添付ファイルとして送信したいと考えています。例えば
System.IO.MemoryStream stream = new System.IO.MemoryStream();
SpreadsheetDocument package = SpreadsheetDocument.Create(stream, SpreadsheetDocumentType.Workbook))
AddParts(package); //created using document reflector
を使用してスプレッドシートを一時ファイルに保存する
stream.WriteTo(new System.IO.FileStream(@"c:\test.xlsx", System.IO.FileMode.Create));
正常に動作します。しかし、電子メールの添付ファイルとしてストリームを直接送信しようとすると失敗します。送信すると、空のファイルが電子メールに添付されます。
System.Net.Mail.Attachment file = new System.Net.Mail.Attachment(stream, "MobileBill.xlsx", "application/vnd.ms-excel");
これを行う方法を知っている人はいますか?