我创建了一个存在于子目录中的ASP.NET MVC Web应用程序。问题是我每次尝试上传文件时都会收到此错误" 无法找到路径的一部分"。
代码在我的本地计算机和其他网络应用程序上完美运行,所以我认为问题与子目录中存在的Web应用程序有关,但我不知道如何解决它。 / p>
提前致谢。
这是我的功能
public byte newImage(HttpPostedFileBase newFile, string uploadPath)
{
if (newFile != null && newFile.ContentLength > 0)
{
if (newFile.ContentLength > 3000000) //means file size maximum is 3 MB
return 1; //means the file size is more than 3 MB
var fileName = Path.GetFileName(newFile.FileName);
var path = Path.Combine(System.Web.HttpContext.Current.Server.MapPath(uploadPath), fileName);
newFile.SaveAs(path);
return 0; //means file uploaded successfuly
}
return 2; //means no file was chosen
}//Upload New Image
答案 0 :(得分:0)
你有没有"映射"上传文件夹正常吗?您可以阅读更多here。
DirectoryInfo yourUploadDir = new DirectoryInfo(HostingEnvironment.MapPath("~/YourUploadFolder"));
答案 1 :(得分:0)
我发现了什么是错的。我似乎忘了添加~
-_-
因此,如果有人遇到此错误,请先检查您是否忘记添加~
。我认为它在我的本地计算机和其他Web应用程序上运行良好,因为它们位于根目录上,但是一旦它放在子目录中,我们需要使用相对路径使用此代字号~
。