获取图像文件夹的路径

时间:2012-04-18 08:03:34

标签: c# asp.net .net file-upload exception-handling

我正在尝试使用asp:FileUpload将图片上传到文件夹(位于我的项目文件夹中)。

单击按钮时出现此错误:

  

SaveAs方法配置为需要root路径,路径'localhost:49256 / bilder'不是root。

这是我背后的代码:

protected void ladda_Click(object sender, EventArgs e)
{
    string filename = filuppladdare.FileName;
    string description = desc.Text;

    if (filuppladdare.HasFile)
    {
        filuppladdare.PostedFile.SaveAs(\localhost:21212\pictures");
    }
}

我只猜到了路径。它应该是什么?或者我如何得到它?

5 个答案:

答案 0 :(得分:4)

使用MapPath方法获取文件夹的物理路径:

filuppladdare.PostedFile.SaveAs(Server.MapPath("~/pictures"));

路径中的~表示应用程序根目录。

答案 1 :(得分:2)

使用路径是指服务器(或其他可访问的FS路径)中的physical path,而不是您网站的网址。

如果您想从网址获取物理路径,请使用Server.MapPath(yourUrl)

答案 2 :(得分:0)

试试这个

filuppladdare.PostedFile.SaveAs("~/Project name/.../pictures");

答案 3 :(得分:0)

有多种方法可以获取当前路径,this link向您展示了如何使用HttpContext中的各种属性来查找路径:

在您的示例中,您可以使用以下内容:

filuppladdare.PostedFile.SaveAs("~\pictures");

~告诉它从应用程序的根目录开始。

您也可以使用Server.MapPath

答案 4 :(得分:0)

一个选项是使用Server MapPath,第二个检查文件夹权限可能是有帮助的