[英]File upload from MVC controller to Web API using RestSharp
我的Web应用程序的一个功能是用户上传markdown文件的能力。 我想将文件从MVC
控制器传递到Web API
控制器,之后Web API
会将markdown文件保存在特定的项目文件夹中。 我想知道是否有可能。 如果是的话,怎么做。
因此,我想到的是让MVC
控制器获取HttpPostedFileBase
参数,然后使用RestSharp的request.AddFile()
将文件发送到Web API
控制器。
MVC控制器
[HttpPost]
public ActionResult Upload(HttpPostedFileBase upload)
{
var client = new RestClient("http://localhost:4000/api/beneficiaries");
var request = new RestRequest(Method.POST);
//todo send file to web API
var response = client.Execute(request);
return View();
}
这应该有效,即使我没有测试过:
request.AddFile(upload.FileName, upload.InputStream.CopyTo, upload.ContentType);
根据api目标方法,如果您需要使用它发送一些参数,您可能需要:
request.AddFile(upload.FileName, upload.InputStream.CopyTo);
request.AddHeader("Content-Type", "multipart/form-data");
request.AddParameter("filename", upload.FileName, ParameterType.RequestBody);
request.AddParameter("otherParameter", "Something here...", ParameterType.RequestBody);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.