Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.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# 将文件保存到IIS服务器上托管的文件夹_C#_Asp.net_Iis_File Upload - Fatal编程技术网

C# 将文件保存到IIS服务器上托管的文件夹

C# 将文件保存到IIS服务器上托管的文件夹,c#,asp.net,iis,file-upload,C#,Asp.net,Iis,File Upload,我正在做一个项目。现在我想把上传的图片保存到- (http://myipaddress//DinegenieApi//category). 此文件夹位于C--inetpub-->DinegenieApi-->类别中。 我收到错误,URI格式不受支持。但当我在浏览器中键入此url时,我可以访问此文件夹 实际上,我正在检查类别文件夹是否已经存在,然后直接保存图像,如果不存在,则首先创建一个名为category的文件夹,然后将图像保存到其中。 以下是我正在使用的文件上载代码: protected

我正在做一个项目。现在我想把上传的图片保存到-

(http://myipaddress//DinegenieApi//category). 
此文件夹位于C--inetpub-->DinegenieApi-->类别中。 我收到错误,URI格式不受支持。但当我在浏览器中键入此url时,我可以访问此文件夹

实际上,我正在检查类别文件夹是否已经存在,然后直接保存图像,如果不存在,则首先创建一个名为category的文件夹,然后将图像保存到其中。 以下是我正在使用的文件上载代码:

 protected Tuple<string, string, string> fileupload(FileUpload fileupload, string foldername)
{
   Tuple<string, string, string> imgdetails;
        string pathreturn = "";
        string fileextension = (Path.GetExtension(fileupload.FileName)).ToLower();
        string name = "-" + fileupload.PostedFile.FileName;
        string filename = DateTime.Now.ToString("dd-MM-yyyy HH:mm:ss").Replace(":", "-") + name;

        if (fileextension == ".jpeg" || fileextension == ".jpg" || fileextension == ".gif" || fileextension == ".png")
        {
            if (fileupload.PostedFile.ContentLength < 512000)
            {

                //string a = Server.MapPath("~/Filestore/") + foldername;
                //string ipaddress=getipaddress();
                string ipaddress = "http://172.16.0.18:8080";
                string a = ipaddress + "//DinegenieApi//" + foldername;
                Uri test = new Uri(a);
                DirectoryInfo mydir = new DirectoryInfo(a);
                if (Directory.Exists(mydir.ToString()))
                {
                    fileupload.SaveAs(a + "\\" + filename);
                }
                else
                {
                    Directory.CreateDirectory(a);
                    fileupload.SaveAs(a + filename);
                }
                pathreturn =a;
                lblmsg.Text = "";
                imgdetails = new Tuple<string, string, string>(pathreturn, filename, lblmsg.Text);
            }
            else
            {
                lblmsg.Text = "File size should be less than 500kb";
                lblmsg.Visible = true;
                imgdetails = new Tuple<string, string, string>("", "", lblmsg.Text);
            }
        }
        else
        {
            lblmsg.Text = "File type should be jpeg,png,gif";
            lblmsg.Visible = true;
            imgdetails = new Tuple<string, string, string>("", "", lblmsg.Text);
        }

        return imgdetails;
}
受保护的元组文件上载(文件上载文件上载,字符串foldername)
{
元组细节;
字符串pathreturn=“”;
字符串fileextension=(Path.GetExtension(fileupload.FileName)).ToLower();
string name=“-”+fileupload.PostedFile.FileName;
字符串文件名=DateTime.Now.ToString(“dd-MM-yyy-HH:MM:ss”)。替换(“:”,“-”)和名称;
如果(文件扩展=“.jpeg”| |文件扩展=”.jpg“| |文件扩展=”.gif“| |文件扩展=”.png”)
{
if(fileupload.PostedFile.ContentLength<512000)
{
//字符串a=Server.MapPath(“~/Filestore/”)+foldername;
//字符串ipaddress=getipaddress();
字符串ipaddress=”http://172.16.0.18:8080";
字符串a=ipaddress+“//DineGenieAppi//”+foldername;
Uri测试=新Uri(a);
DirectoryInfo mydir=新的DirectoryInfo(a);
if(Directory.Exists(mydir.ToString()))
{
fileupload.SaveAs(一个+“\\”+文件名);
}
其他的
{
CreateDirectory(a);
fileupload.SaveAs(a+文件名);
}
路径返回=a;
lblmsg.Text=“”;
imgdetails=新元组(路径返回,文件名,lblmsg.Text);
}
其他的
{
lblmsg.Text=“文件大小应小于500kb”;
lblmsg.Visible=true;
imgdetails=新元组(“,”,lblmsg.Text);
}
}
其他的
{
lblmsg.Text=“文件类型应为jpeg、png、gif”;
lblmsg.Visible=true;
imgdetails=新元组(“,”,lblmsg.Text);
}
返回IMG详细信息;
}

为什么要用“/”作为URL?将其更改为“http://myipaddress/DinegenieApi/category”,然后重试。这与代码中显示的内容相同,但在访问它时会变得与您提到的相同。您正在此处添加“//”ipaddress+”//DinegenieApi//“+foldername;”,但我建议您改用Server.MapPath。并使用Path.Combine始终连接路径。检查此链接