簡體   English   中英

在 ZD7EFA19FBE7D3972FD5ADB6024223D74 中使用 memory stream 下載 excel 文件

[英]Download excel file using memory stream in C#

我必須通過從 memory stream 創建 excel 工作簿來返回文件。 我使用過 Interop、closed.xml、spire.xls 但沒有找到實現相同目標的方法。

    var stream=clsUploadHelper.GetAttachmentFileStream(string.Empty, Filename);
Workbook book=new Workbook();
book.worksheet.Add(stream);
                            stream.Position = 0;
                            string xmlString = "attachment;filename=" + Filename;
                            return File(stream, xmlString, Filename);

我是新來的,如果可能的話,請幫忙。 提前致謝。

聚會可能遲到了,但是我今天遇到了這個問題,並且能夠編寫此 POC 以便使用 .NET Core Web API 返回 XLSX 文件。

    [HttpPost]
    public async Task<FileResult> Post()
    {
        try
        {

            var workbook = new Workbook();
            var sheet = workbook.Worksheets[0];

            sheet.InsertRow(1);
            sheet.Rows[0].Columns[0].Value = "testing...";

            await using var stream = new MemoryStream();
            workbook.SaveToStream(stream, Spire.Xls.FileFormat.Version2016);

            const string contentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
            HttpContext.Response.ContentType = contentType;
            HttpContext.Response.Headers.Add("Access-Control-Expose-Headers", "Content-Disposition");

            var fileContentResult = new FileContentResult(stream.ToArray(), contentType)
            {
                FileDownloadName = $"test.xlsx"
            };

            return fileContentResult;
        }
        catch (Exception e)
        {
            Console.WriteLine(e);
            return null;
        }
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM