How to save the downloaded file? C # mvc

I want to upload an image file to the project folder, but I have an error in my catch: Could not find part of the path "C: \ project \ uploads \ logotipos \ 11111 \".

What am I doing wrong? I want to save this image, uploaded by my client in this folder ... this folder exists ... ah, if I put a breakpoint for folder_exists3, which shows me the true value!

My code is:

try { var fileName = dados.cod_cliente; bool folder_exists = Directory.Exists(Server.MapPath("~/uploads")); if(!folder_exists) Directory.CreateDirectory(Server.MapPath("~/uploads")); bool folder_exists2 = Directory.Exists(Server.MapPath("~/uploads/logo")); if(!folder_exists2) Directory.CreateDirectory(Server.MapPath("~/uploads/logo")); bool folder_exists3 = Directory.Exists(Server.MapPath("~/uploads/logo/" + fileName)); if(!folder_exists3) Directory.CreateDirectory(Server.MapPath("~/uploads/logo/"+fileName)); file.SaveAs(Server.MapPath("~/uploads/logo/" + fileName+"/")); } catch(Exception e) { } 

Does anyone know what I'm doing wrong?

Thanks:)

+4
source share
4 answers

Try the following:

 string targetFolder = HttpContext.Current.Server.MapPath("~/uploads/logo"); string targetPath = Path.Combine(targetFolder, yourFileName); file.SaveAs(targetPath); 
+16
source

Your mistake is as follows:

 bool folder_exists3 = Directory.Exists(Server.MapPath("~/uploads/logo/" + fileName)); if(!folder_exists3) Directory.CreateDirectory(Server.MapPath("~/uploads/logo/"+fileName)); 

You check if the directory exists, but you have to check if the file exists:

 File.Exists(....); 
0
source

Delete the last part of the save path, you have an extra "/"

It should be

 file.SaveAs(Server.MapPath("~/uploads/logo/" + fileName); 

Also you do not have a set of file extensions.

0
source

You need a file name

 file.SaveAs(Server.MapPath("~/uploads/logo/" + fileName+"/" + your_image_fillename)); 
0
source

Source: https://habr.com/ru/post/1494252/


All Articles