我之前已成功设法使用webimage帮助程序上传文件,但我现在正尝试将其与创建目录相结合,并且失败了。这是我的代码:
if(IsPost){
//Create Directory using PropertyID
var imageroot = Server.MapPath("~/Images/Property/");
var foldername = rPropertyId.ToString();
var path = Path.Combine(imageroot, foldername);
if(!Directory.Exists(path)){
Directory.CreateDirectory(path);
}
photo = WebImage.GetImageFromRequest();
if(photo != null){
MediumFileName = rPropertyId + "_" + gooid + "_" + "Medium";
imagePath = path + MediumFileName;
photo.Save(@"~\" + imagePath);}
}
首先,我创建一个名为propertyID的目录。这很好用。然后我尝试将新照片上传到该路径,我收到一条错误消息,说“不支持给定路径的格式”。
有什么想法吗?
答案 0 :(得分:2)
在创建目录路径时正确使用Path.Combine()
,在制作图像路径时应该这样做。
imagePath = Path.Combine(path, MediumFileName);
除此之外,错误消息表明可能是遗漏了导致问题的文件扩展名?也许使用Path.GetFileName(photo.FileName)
或类似的东西,并将其用作构造路径名的末尾。