我想使用 FileUpload 控件上传到 Windows 服务器上的物理路径。我在同一台服务器上有 2 个网站,我想从一个网站上传图片并将其保存在另一个网站的图片文件夹中。
我现在使用这个代码,它只接受虚拟路径
FileUpload1.SaveAs(Server.MapPath("~/images/") & filename)
我想使用 FileUpload 控件上传到 Windows 服务器上的物理路径。我在同一台服务器上有 2 个网站,我想从一个网站上传图片并将其保存在另一个网站的图片文件夹中。
我现在使用这个代码,它只接受虚拟路径
FileUpload1.SaveAs(Server.MapPath("~/images/") & filename)
SaveAs方法将接受服务器上任何目录的完整路径。诀窍是确保 ASP.Net 应用程序对该目录具有写入权限。我们通常通过将应用程序池标识设置为网络服务,然后授予网络服务用户对该文件的写入权限来做到这一点。
另一个潜在的考虑因素是您是否使用假冒;如果您是,您模拟的用户将需要访问该目录。例如,由于需要访问其他机器上的资源,我们为所有传入请求模拟域服务帐户。由于 ASP.Net 以该用户身份执行操作,因此需要此域服务帐户才能访问该目录。