我想通过方法HttpPostedFileBase.SaveAs()
将上传的文件保存到物理路径。
当我选择物理路径时,会出现异常,表明路径必须是虚拟的。
var fileName = Path.GetFileName(fileurl.FileName);
var path = "C:/Projets" + fileName;
fileurl.SaveAs(Server.MapPath(path));
如何更改我的代码以便能够在我想要的地方保存文件?
答案 0 :(得分:19)
Server.MapPath
仅适用于属于网站的物理位置。如果要将文件保存在外面,可以使用以下命令:
var fileName = Path.GetFileName(fileurl.FileName);
fileurl.SaveAs(Path.Combine(@"c:\projects", fileName));
确保执行应用程序池的帐户被授予对此文件夹的写入权限。
答案 1 :(得分:1)
Server.MapPath用于虚拟路径。您可以尝试使用Path.GetFullPath(路径)。