您好我正在开发vb.net中的Web应用程序。使用此代码将文件从客户端上传到服务器端文件夹时,我遇到了问题
Dim fileName As String = Path.GetFileName(FileUpload1.PostedFile.FileName)
Dim ext As String = System.IO.Path.GetExtension(fileName)
FileUpload1.PostedFile.SaveAs(Server.MapPath("~/EmployeeSignature/../../") + "IMG12345" & ext)
以下是根文件夹和目标文件夹结构
这是我的网站内部结构(UploadingTest)
问题是在这一行
FileUpload1.PostedFile.SaveAs(Server.MapPath("~/EmployeeSignature/../../") + "IMG12345" & ext)
我收到错误消息
Cannot use a leading .. to exit above the top directory.
我的要求是将文件保存在根目录之上,尝试很多但无法解决问题,请提出任何解决方案!感谢
答案 0 :(得分:3)
当您使用..
进行转换时,您无法在逻辑路径中使用MapPath
走出Web根目录的文件夹。将那些移到MapPath
来电之外:
Server.MapPath("~") + "\..\EmployeeSignature\IMG12345" + ext
答案 1 :(得分:3)
在IIS中,在您的网站内添加虚拟目录
现在您可以使用以下代码访问文件夹
HttpContext.Current.Server.MapPath("EmployeeSignatures")
HttpContext.Current.Server.MapPath("Images")