C# 已尝试将图像另存为项目文件夹,但查找路径时出错
我有一个ASP应用程序,它将图像保存到项目文件夹,并将路径保存到MySQL数据库,但如果我尝试我的代码,它会说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
"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,直到同一问题:(