在服务器上下载Excel文件,而不是在客户端上

本文关键字:客户端 文件 服务器 下载 Excel | 更新日期: 2023-09-27 18:11:14

我有一个按钮在我的web应用程序导出Excel文件,但当用户点击按钮,我的错误是,我下载的文件在服务器上,而不是在客户端。这是我的代码:

var excelApp = new Excel.Application();
String f = excelApp.GetSaveAsFilename(nameOfDocument, "Excel Filter (*.xlsx), *.xlsx").ToString();
workSheet.SaveAs(f);

我用的是Office Interop Excel。

你能帮我吗?

在服务器上下载Excel文件,而不是在客户端上

首先,你不应该在asp.net服务器上使用Interop。微软不鼓励这样做,因为这会导致不良行为。

其次,您应该保存文档,并将其输出到响应流。一种方法是使用TransmitFile:

// save your file to a temporary location
string pathToTheSavedFile = ...;
// then transmit the file
HttpContext.Current.Response.TransmitFile(pathToTheSavedFile);