为什么我的文件路径空使用FileUpload在ASP.net

本文关键字:FileUpload ASP net 我的 文件 路径 为什么 | 更新日期: 2023-09-27 18:11:52

当我使用FileUpload浏览文件时,为什么我的文件路径没有任何内容?我不想上传文件,我只想获取文件的目录(我使用该文件更新SQL数据库使用(xlsx file))

<asp:FileUpload ID="FileUpload" runat="server" Height="24px" Style="position: static" Width="255px" />
<asp:Button ID="Uploadbtn" runat="server" OnClick="Uploadbtn_Click" Style="position: static" Text="Upload" Width="82px" />

Uploadbtn_Click事件背后的代码(测试是")

string test = FileUpload.FileName;

为什么我的文件路径空使用FileUpload在ASP.net

正如您可以在MSDN (http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.fileupload.filename.aspx)上读到的,文件名将永远不会包含该文件的目录。

服务器上的软件永远不允许窥视客户端计算机的内部

对于这个问题的答案是我们没有机会从fileupload控件获得上传文件的完整路径,因为一些安全原因浏览器将只返回文件名,而不是从客户端机器返回完整的文件路径。
如果你想从客户端机器的fileupload control中获得上传文件的完整路径我们需要将该文件保存在我们的应用程序文件夹中我们可以获得该文件的路径,如下所示

代码:

string filename = Path.GetFileName(fileUpload.PostedFile.FileName);
fileUpload.SaveAs(Server.MapPath("Files/"+filename));
string filepath = "Files/"+filename;