Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.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_.net_File Upload_Exception Handling - Fatal编程技术网

C# 获取图像文件夹的路径

C# 获取图像文件夹的路径,c#,asp.net,.net,file-upload,exception-handling,C#,Asp.net,.net,File Upload,Exception Handling,我正在尝试使用asp:FileUpload将图片上载到文件夹(位于我的项目文件夹中) 当我单击按钮时出现此错误: SaveAs方法配置为需要根路径,而路径“localhost:49256/bilder”不是根路径 下面是我的代码: protected void ladda_Click(object sender, EventArgs e) { string filename = filuppladdare.FileName; string description = desc.T

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

当我单击按钮时出现此错误:

SaveAs方法配置为需要根路径,而路径“localhost:49256/bilder”不是根路径

下面是我的代码:

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");
    }
}

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

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

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

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

要使用的路径指的是服务器上(或其他可访问的FS路径)的,而不是网站的url

如果要从url获取物理路径,应使用
Server.MapPath(您的url)

尝试以下操作

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

获取当前路径有多种方法,演示了如何使用HttpContext中的各种属性来查找路径:

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

filuppladdare.PostedFile.SaveAs("~\pictures");
~
告诉它从应用程序的根目录开始


您也可以使用

一个选项是使用服务器映射路径,第二个选项是检查文件夹权限,这可能有助于

另一个可能的副本的可能副本:Server.MapPath documentation:似乎可以工作,但现在我获得了“对路径的访问权”“我的磁盘上的更正路径…\visual studio 2010\Project\labb6\labb6\bilder”被拒绝。”相反,当尝试上载时。因此,这条路似乎是正确的right@guffa请参见上文:)(我是否必须写入@your username以便您查看我的问题?@tobbe:是的,您需要为运行代码的用户帐户授予文件夹的写入权限。当您在没有@的情况下评论我的答案时,我会收到通知,但这是一个论坛,不是聊天,因此您可能需要一段时间才能得到答案。:)哦,呵呵,对不起。我不知道它是怎么工作的。但现在我知道了,谢谢!似乎有效,但现在我在尝试上载时获得了“访问路径‘我的磁盘上的正确路径…\visual studio 2010\Projects\labb6\labb6\bilder’被拒绝”的权限。知道如何修复吗?请检查文件夹安全属性,并检查网站是否运行在可以正确访问FS的应用程序池中,以及运行IIS进程的用户是否也具有访问权限。。。请看这里: