当我尝试使用ASP.NET核心和ASP.NET完整框架的Stream文件时,我遇到了一个非常不寻常的问题。
我一直在尝试使用在我的本地环境和本地IIS 7中工作的不同代码示例。但是,在App Service中执行这些代码示例时效果不佳。无法下载完整的文件。在每次执行时,我的文件都会丢失几个字节,从而导致文件损坏(下载后)。
由于我尝试了多个代码示例,因此我不在此处提供代码片段。代码示例是从stackoverflow或官方文档中提取的。
答案 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存储,并且文件上传成功没有问题。