我有一个看起来像这样的简化表格:
<form id="image-form" enctype="multipart/form-data">
<input type="text" name="imageEntryName" />
<input type="file" name="imageEntry" />
<input type="text" name="imageEntryAltText" />
<input type="submit" value="SEND INN" class="btn-ok" />
</form>
此操作已过帐:
[HttpPost]
[Route("~/api/Exhibition/SubmitImageEntry")]
public async Task<HttpResponseMessage> SubmitImageEntry()
{
if (!Request.Content.IsMimeMultipartContent())
{
throw new HttpResponseException(HttpStatusCode.BadRequest);
}
var provider = new MultipartFormDataStreamProvider("C:/test");
var data = await Request.Content.ReadAsMultipartAsync(provider);
return new HttpResponseMessage(HttpStatusCode.OK);
}
这可行。我得到了发布的数据。但是,如果没有
MultipartFormDataStreamProvider
将文件保存到C:/test
,是否可以实现?我可以,只要将数据保留在内存中,直到操作完成即可。编辑:使用
MultipartFormDataStreamProvider
我得到.FormData["key"]
选项,这是我想要的。 最佳答案
使用MultipartMemoryStreamProvider
。
关于c# - 读取多部分表单数据而不将文件保存到磁盘?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26427655/