加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

.net – MultipartFormDataStreamProvider vs HttpContext.Curre

发布时间:2020-12-16 00:42:23 所属栏目:asp.Net 来源:网络整理
导读:我很难理解为什么在使用HttpContext.Current获取所有信息时,我想使用MultipartFormDataStreamProvider。 这样做容易得多: var mydata = HttpContext.Current.Request.Form["mydata"]; 比这个: string root = HttpContext.Current.Server.MapPath("~/somed
我很难理解为什么在使用HttpContext.Current获取所有信息时,我想使用MultipartFormDataStreamProvider。

这样做容易得多:

var mydata = HttpContext.Current.Request.Form["mydata"];

比这个:

string root = HttpContext.Current.Server.MapPath("~/somedir");
var provider = new MultipartFormDataStreamProvider(root);

this.Request.Content.ReadAsMultipartAsync(provider).ContinueWith(t =>
{
    var mydata = provider.Contents.First(c => c.Headers.ContentDisposition.Name == ""mydata"").ReadAsStringAsync().Result;
});

PS – 我正在尝试构建一个ApiController来接受文件上传。我读过这篇文章http://www.asp.net/web-api/overview/working-with-http/sending-html-form-data,-part-2。

解决方法

这是我在 MSDN发现的。我想这可能会帮助你。

流提供者查看Content-Disposition头域,并根据文件名参数的存在确定输出流。如果在Content-Disposition头域中存在文件名参数,则将Body部分写入FileStream,否则将其写入MemoryStream。这使得可以方便地处理作为表单数据和文件内容的组合的MIME Multipart HTML Form数据。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读