【发布时间】:2019-08-25 09:44:15
【问题描述】:
尝试从 c# asp.net Web 应用程序将 excel 文件保存到用户桌面。这在测试时在本地机器上运行良好,但在远程服务器上运行良好。有人可以帮我解决这个问题吗?谢谢!
代码:
string filePath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
FileInfo fi = new FileInfo(filePath + @"\spreadsheet.xlsx");
excelPackage.SaveAs(fi);
【问题讨论】:
-
此代码在服务器上执行。您正在尝试将文件保存在服务器的“桌面”上。
-
同意史蒂夫,但您遇到错误的路径是直接保存到 C:\,而不是桌面
-
我觉得你们俩更让我困惑。那么,我是否应该将文件保存到服务器上的一个文件夹中,例如:c:\somefolder\,然后将文件提供给用户保存在哪里?
-
您只能向您的用户提供一个下载按钮,让他/她决定他/她要保存文件的位置。
-
你真的必须记住你的代码在哪里执行以及它能够做什么。此代码在服务器上运行。您是否曾经访问过一个网站,然后它只是将随机文件放在您的计算机上任意位置?不?如果网站可以做到这一点,您不认为这将代表一个巨大的安全漏洞吗?如何从网站获取计算机上的文件?该网站提供文件供下载,然后用户选择放置文件的位置。因此,您需要弄清楚如何在 ASP.NET 应用程序中提供文件以供下载。
标签: c# asp.net file-permissions