Hai guys,
我有两个名为CSVLoad和Forms的文件夹...我在Forms文件夹中有一个aspx页面,它有一个fileupload控件。我将上传的文件保存到CSVLoad文件夹中,我给出了以下路径
FileUpload1.SaveAs(Server.MapPath("CSVLoad//" + FileUpload1.FileName));
我收到文件未找到例外...
Could not find a part of the path
'F:\WebSites\Payroll\Forms\CSVLoad\Employeesdata.csv'
CSVLoad文件夹在Forms文件夹外(即)都是我的应用程序的根级文件夹
答案:
FileUpload1.SaveAs(Server.MapPath("~/CSVLoad//" + FileUpload1.FileName));
来自之前的SO问题之一ASP.NET Server.Mappath problem from inner folders
答案 0 :(得分:2)
如果路径没有以斜杠开头,那么它将返回相对于页面所在的当前目录的路径,在这种情况下,表单I假设。如果您希望它映射相对于应用程序根目录的路径,那么您应该在路径上添加斜杠前缀并使用:
Server.MapPath("~/CSVLoad/" + FileUpload1.FileName);