保存在任何文件夹中而不是在桌面中

Save inside any folder instead in Desktop

代码:

Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=pdfpage.pdf");
Response.Cache.SetCacheability(HttpCacheability.NoCache);

我使用上面的代码允许我的 Web 应用程序的用户将在服务器上生成的 PDF 保存在他自己的设备上。该文件在桌面上保存为 pdfpage.pdf,但我需要将该文件保存在任何文件夹中。例如在 E:\PDFs\pdfpage.pdf

你的问题是错误的。我纠正了一部分。它的一部分仍然是错误的:您声称 PDF 保存在桌面上。当您测试它时,这可能是正确的,但通常情况下并非如此。例如:如果我要使用您的应用程序,PDF 将保存在我的浏览器设置中定义的下载文件夹

无法通过在服务器上设置参数来在客户端定义浏览器的下载文件夹。

有一些非常简单的原因可以解释您所要求的是不可能的:

  1. 服务器不知道客户端上的文件结构。例如:我的计算机上没有 E: 磁盘,因此如果您将下载文件夹定义为 E:\PDFs\pdfpage.pdf,您的 Web 应用程序将无法运行。
  2. 如果服务器能够读取客户端计算机的整个文件夹结构以检测保存 PDF 文件的位置,那将是一个严重的安全问题。

您要求在客户端、最终用户的浏览器中进行配置。这不能在服务器端配置。例如:我在我的机器上使用 Chrome、Firefox 和 Edge。我为这些不同的浏览器定义了不同的下载文件夹。如果我在一个浏览器中使用您的网络应用程序,它会根据我使用的浏览器将 PDF 下载到不同的文件夹中。