c# – 文件流通过Web API上传到StreamReader
发布时间:2020-12-15 08:02:55 所属栏目:百科 来源:网络整理
导读:基本上我想将文件流式传输到Web API,一旦进入web api控制器,我想通过流式读取器传递数据,因为它会进入低级逻辑.我尝试了从另一个SO帖子中找到的以下代码进行了一些修改,但我得到: An asynchronous module or handler completed while an asynchronous opera
基本上我想将文件流式传输到Web API,一旦进入web api控制器,我想通过流式读取器传递数据,因为它会进入低级逻辑.我尝试了从另一个SO帖子中找到的以下代码进行了一些修改,但我得到:
public async void Put(int id,HttpRequestMessage request) { if (!Request.Content.IsMimeMultipartContent()) throw new InvalidOperationException(); var provider = new MultipartMemoryStreamProvider(); await Request.Content.ReadAsMultipartAsync(provider); var file = provider.Contents.First(); var filename = file.Headers.ContentDisposition.FileName.Trim('"'); var buffer = await file.ReadAsByteArrayAsync(); var stream = new MemoryStream(buffer); using (var s = new StreamReader(stream)) { saveFile.Execute(id,s); } } 只要我正在流式传输数据,我就会接受其他解决方案.我是新手等待和异步,我可能犯了一个基本错误.有任何想法吗? 解决方法
将async void更改为async Task
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |