0

嗨,我正在 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.

我的要求是将文件保存在根目录以上,尝试了很多但无法解决问题,请提出任何解决方案!谢谢

4

2 回答 2

3

当您用于转换时,您不能..在逻辑路径中使用您的 Web 根目录之外的文件夹。MapPath将那些移到MapPath通话之外:

Server.MapPath("~") + "\..\EmployeeSignature\IMG12345" + ext
于 2013-05-01T21:32:09.810 回答
3

在 IIS 中,在您的网站中添加虚拟目录

  1. 员工签名
  2. 图片

现在您可以使用以下代码访问文件夹

HttpContext.Current.Server.MapPath("EmployeeSignatures")
HttpContext.Current.Server.MapPath("Images")
于 2013-05-01T22:42:26.580 回答