Azure App Service中的流文件丢失字节

时间:2018-05-14 14:29:34

标签: azure azure-web-sites azure-web-app-service

当我尝试使用ASP.NET核心和ASP.NET完整框架的Stream文件时,我遇到了一个非常不寻常的问题。

我一直在尝试使用在我的本地环境和本地IIS 7中工作的不同代码示例。但是,在App Service中执行这些代码示例时效果不佳。无法下载完整的文件。在每次执行时,我的文件都会丢失几个字节,从而导致文件损坏(下载后)。

由于我尝试了多个代码示例,因此我不在此处提供代码片段。代码示例是从stackoverflow或官方文档中提取的。

1 个答案:

答案 0 :(得分:0)

基本上我的代码有:

try
{
     WebRequest req = WebRequest.Create("[URL here]");
     WebResponse response = req.GetResponse();
     Stream stream = response.GetResponseStream();
     //...
}
catch (Exception)
{
     MessageBox.Show("There was a problem downloading the file");
}

<强>控制器

 [HttpPost("Document")]
 [Produces("application/octet-stream")]
 [AllowAnonymous]
 public async Task<IActionResult> Download([FromBody]DownloadDmsRequest data)
 {

如果我在MemoryStream中收到流,我的文件将完全下载。 我做了测试,将文件下载到内存中,然后将该文件上传到blob存储,并且文件上传成功没有问题。