如何在不保存的情况下将服务器内存中创建的文件下载到客户端?



如何在不保存的情况下将在服务器内存中创建的文件下载到客户端(ASP.NET)?

我使用NetOffice在服务器上生成了一个Excel文件。但现在,我无法将其下载到客户端。我不想在服务器上保存此文件的副本。

我们可以使用Streams发送在内存中创建的文件对象吗?

确实可以。只需传递给HTTP请求的Response.OutputStream即可。这样的东西应该可以工作(其中您的stream是来自内存中excel文档的流):

    Response.Clear();
    Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
    Response.AddHeader("Content-Disposition", "attachment; filename=myfile.xlsx");
    yourStream.WriteTo(Response.OutputStream);
    Response.Flush();

最新更新