0

を使用して Excel ファイルを作成しましたEPPlusが、ワークシートに画像を追加しようとしてエラーが表示されるまでは問題ありません。

(値を null にすることはできません。パラメーター名: contentType)

次の行で:

package.Workbook.Worksheets.Add("MasterPackingList", createPackingListExcel(dt));

以下のコード部分を削除すると動作します

System.Drawing.Image logo = System.Drawing.Image.FromFile(Server.MapPath("~/Images/")+"PLLogo_Nestle.png");
var addedLogo = worksheet.Drawings.AddPicture("Logo", logo);

以下は、ユーザーにExcelを提供する方法です。

Response.Clear();
Response.AddHeader("content-disposition", "attachment;  filename=file.xlsx");
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.BinaryWrite(package.GetAsByteArray());
Response.End();
4

1 に答える 1

1

すべてが正しいですが、メソッド (私の場合は createPackingListExcel) によってワークシートが返されると、この不可解なエラーが発生します。

したがって、ワークシートを返す代わりに、パッケージをパラメーターとして関数に送信し、関数 createPackingListExcel 内でワークシートをパッケージに追加すると、エラーはなくなります。面白い...

于 2012-12-12T07:44:50.687 に答える