HttpPostedFileBase的完整路径与webclient上传文件一起出错

时间:2015-05-26 05:50:57

标签: c# asp.net-mvc asp.net-mvc-4 file-io webclient

public ActionResult Index(PublishPost post, HttpPostedFileBase f)
{ 
    string apiUrl = "http://myurl.com"
    WebClient Client = new WebClient();
    byte[] rb = Client.UploadFile(apiUrl, "POST", f.FullName);
    string response = Encoding.UTF8.GetString(rb);
}

httppostefilebase的路径正在显示 - C:\Windows\SysWOW64\inetsrv\adminrights.JPG,但它在webclient中出错 - Path not found。请帮忙

1 个答案:

答案 0 :(得分:1)

要使用HttpPostedFileBase上传文件,您可以使用以下代码段:

public void UploadFile(HttpPostedFileBase file)
{
        var folderName = "/Content/Upload/Images/";
        var fileName = file.FileName;
        using (var fileStream = File.Create(BasePath + folderName + fileName))
        {
            file.InputStream.CopyTo(fileStream);
        }
}

只要IIS有权写入文件,就不会上传文件的文件夹。

要删除文件,请参阅https://msdn.microsoft.com/en-us/library/system.io.file.delete(v=vs.110).aspx

通过询问是否在上传后删除文件,我不知道您的意思 - 这取决于您的意图。