Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 已尝试将图像另存为项目文件夹,但查找路径时出错_C#_Asp.net - Fatal编程技术网

C# 已尝试将图像另存为项目文件夹,但查找路径时出错

C# 已尝试将图像另存为项目文件夹,但查找路径时出错,c#,asp.net,C#,Asp.net,我有一个ASP应用程序,它将图像保存到项目文件夹,并将路径保存到MySQL数据库,但如果我尝试我的代码,它会说 "Could not find a part of the path 'c:\users\tree\documents\visual studio 2012\Projects\Ecommerce_HP\Ecommerce_HP\Foto\" 这是我的密码 if (F1.PostedFile == null || F2.PostedFile == null || F3.PostedFi

我有一个ASP应用程序,它将图像保存到项目文件夹,并将路径保存到MySQL数据库,但如果我尝试我的代码,它会说

"Could not find a part of the path 'c:\users\tree\documents\visual studio 2012\Projects\Ecommerce_HP\Ecommerce_HP\Foto\"
这是我的密码

if (F1.PostedFile == null || F2.PostedFile == null || F3.PostedFile == null)
        {
            lbleror.Text = "Silahkan Pilih Foto, Minimal 1 Foto";
        }
        else
        {
            try
            {
                string f1, f2, f3;
                f1 = Path.GetFileName(F1.PostedFile.FileName);
                f2 = Path.GetFileName(F2.PostedFile.FileName);
                f3 = Path.GetFileName(F3.PostedFile.FileName);

                F1.SaveAs(Server.MapPath("Foto/"+f1));
                F2.SaveAs(Server.MapPath("Foto/"+f2));
                F3.SaveAs(Server.MapPath("Foto/"+f3));

                con.Open();
                MySqlCommand cmd = new MySqlCommand("INSERT INTO databarang(MerkID,NamaBarang,StokBarang,Harga,TanggalBarangMasuk,ImgPath1,ImgPath2,ImgPath3) VALUES(@a,@b,@c,@d,@e,@f,@g,@h)", con);
                cmd.Parameters.AddWithValue("@a",ddlmerk.SelectedValue);
                cmd.Parameters.AddWithValue("@b",txtnama.Value.Trim());
                cmd.Parameters.AddWithValue("@c",txtstok.Value.Trim());
                cmd.Parameters.AddWithValue("@d",txtharga.Value.Trim());
                cmd.Parameters.AddWithValue("@e",System.DateTime.Now);
                if(f1!=null)
                {
                    cmd.Parameters.AddWithValue("@f","Foto/"+f1);
                }
                else
                {
                    cmd.Parameters.AddWithValue("@f",null);
                }

                if(f2!=null)
                {
                    cmd.Parameters.AddWithValue("@g","Foto/"+f2);
                }
                else
                {
                    cmd.Parameters.AddWithValue("@g",null);
                }

                if(f3!=null)
                {
                    cmd.Parameters.AddWithValue("@h","Foto/"+f3);
                }
                else
                {
                    cmd.Parameters.AddWithValue("@h",null);
                }
                cmd.ExecuteNonQuery();
                con.Close();
                reset();
            }
            catch (Exception ex)
            {
                con.Close();
                lbleror.Text = ex.Message.ToString();
                errm.Visible = true;
            }
        }
当我试图改变的时候

F1.SaveAs(Server.MapPath("Foto/"+f1)); 
to 
F1.SaveAs(Server.MapPath("~/Foto/"+f1));
结果是一样的,只是找不到路径的一部分。。。 有解决办法吗


如果您不在父文件夹中,则为我的项目结构。然后尝试进入父文件夹。将(.)放在链接之前。这将使您从当前文件夹位置后退一步


F1.SaveAs(Server.MapPath(“./img/”+F1))

您的Foto文件夹位于Admin文件夹中。使用

F1.SaveAs(Server.MapPath("~/Admin/Foto/"+f1));
而不是

F1.SaveAs(Server.MapPath("~/Foto/"+f1));
请尝试以下方法:

F1.SaveAs(Server.MapPath("~/Admin/Foto/"+f1));

有趣的一点是保存在参数中的路径。这里我们有一个Foto根,而不是IMG。你确定你的路线吗?您是否检查了它们是否存在?
img
在保存文件之前应该先创建文件夹。经过编辑,仍然是相同的问题,只需更改为“找不到路径的一部分”c:\users\tree\documents\visual studio 2012\Projects\Ecommerce\u HP\Ecommerce\u HP\Foto\”您已将Foto文件夹显示在Admin文件夹中,但该文件夹似乎不在您的路径中。您遗漏了/Admin/fotos,直到同一问题:(