繁体   English   中英

如何保存上传的文件? 时间:2019-05-06 标签:c#mvc

[英]How save uploaded file? c# mvc

我想将图像文件上传到项目的文件夹,但我的捕获出错:找不到路径“C:\\project\\uploads\\logotipos\\11111\\”的一部分。

我做错了什么? 我想将我的客户端上传的图像保存在该文件夹中...该文件夹存在...啊,如果我为 folder_exists3 设置一个断点,显示我的真实值!

我的代码是:

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)
{
}

有人知道我做错了什么吗?

谢谢 :)

尝试这个:

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

您的错误如下:

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

您检查目录是否存在,但您应该检查文件是否存在:

File.Exists(....);

你需要文件名

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

删除路径的最后一部分以保存您有一个额外的“/”

它应该是

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

您也没有设置文件扩展名。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM