如何将POST请求内容保存为.NET中的文件

我有一个客户端应用程序向asp.net URL发出POST请求(它用于将文件上传到.NET )。

如何使asp.net页面收到此请求并将其保存为文件?

@ Darin Dimitrov我已经尝试了你的代码,但是我得到了500 internal server error如何跟踪它?

如果客户端使用multipart/form-data请求编码(这是上载文件的标准),则可以从Request.Files集合中检索上载的文件。 例如:

 protected void Page_Load(object sender, EventArgs e) { foreach (HttpPostedFile file in Request.Files) { var fileName = Path.GetFileName(file.FileName); var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName); file.SaveAs(path); } } 

或者如果您知道客户端使用的名称,您可以直接访问它:

 HttpPostedFile file = Request.Files["file"]; 

另一方面,如果客户端不对请求使用标准编码,则可能需要从Request.InputStream读取文件。

您还可以使用保存整个请求

 HttpContext.Current.Request.SaveAs(filename,includeHeaders) 

假设数据未作为multipart / form-data上传