Excelのシートがダウンロードされていないのに、ボタンをクリックしたときに文書を提供しようとしています。何も起こりません、エラーや何も、私は試しにラップしたが、それはエラーを出すことはありません、それはResponse.Flush()
とResponse.End()
になる何も起こりません。文書が表示されない
エクセルシートを構築するために使用されるテーブルは、DBからインポートされるデータテーブルです。
私はそれはClosedXMLのバグだClosedXML
コード
DataTable table = new DataTable();
table = dtResults.Copy();
table.Merge(dtResultsAll);
table.TableName = "LookupData";
using (XLWorkbook wb = new XLWorkbook())
{
wb.Worksheets.Add(table);
Response.Clear();
Response.Buffer = true;
Response.Charset = "";
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attchment;filename=AuditReport.xlsx");
using (MemoryStream MyMemoryStream = new MemoryStream())
{
wb.SaveAs(MyMemoryStream);
MyMemoryStream.WriteTo(Response.OutputStream);
Response.Flush();
Response.End();
}
}
あなたは[に従って例]にあなたのコードを比較する場合(https://github.com/closedxml/closedxml/wiki/Deliver- an-Excel-file-in-ASP.NET)、ヘッダーのスペルが間違っていることがわかります: 'attchment'vs。 'アタッチメント' – Filburt
Ivがそれを変更しましたが、それでも同じことをしています –
リンクされたサンプルコードをコピーし、期待通りに機能しました。私はあなたのコードに似たDataTableを使用するように変更しましたが、それでも機能しました。あなたのコードをこの例に似せるように修正することをお勧めします。 – Filburt