.net 通过my Azure Web App上载文件时超时

.net 通过my Azure Web App上载文件时超时,.net,azure,asp.net-core,.net,Azure,Asp.net Core,通过作为Azure Web应用程序托管的.NET核心应用程序上载文件时,我遇到以下错误: 您正在查找的资源已被删除、名称已更改或暂时不可用 这是测试邮递员和超时与404没有找到在大约22秒 我的申请代码如下,去掉多余的东西: 公共异步任务PostDocuments(ICollection文件) { foreach(文件中的var文件) { 字符串路径=path.Combine(uploadsDir,file.FileName); //正在将文件上载到要暂存的“上载”。无法通过此处。 使用(var

通过作为Azure Web应用程序托管的.NET核心应用程序上载文件时,我遇到以下错误:

您正在查找的资源已被删除、名称已更改或暂时不可用

这是测试邮递员和超时与404没有找到在大约22秒

我的申请代码如下,去掉多余的东西:

公共异步任务PostDocuments(ICollection文件)
{
foreach(文件中的var文件)
{
字符串路径=path.Combine(uploadsDir,file.FileName);
//正在将文件上载到要暂存的“上载”。无法通过此处。
使用(var stream=newfilestream(Path.Combine(uploadsDir,file.FileName),FileMode.Create))
{
等待文件.CopyToAsync(流);
}
//将文件上载到Azure
if(wait_azure.UploadFile(路径、文件名)
{
//要将文件添加到数据库的内容
}
其他的
{
返回状态码(400,“无法上载一个或所有文件”);
}
}
其他的
{
返回状态码(400,“您的一个或所有文件为空,类型无效,或针对不匹配的建筑物或楼层。”);
}
}
返回状态码(201,文件);
}

我认为我的问题只是请求时间太长,Azure正在取消请求以保持应用程序的完整性。根据我的研究,可能我需要允许应用程序启动Azure上载并将其添加到数据库中。但是,从我在本地的测试来看,这似乎是一个漫长的过程这个过程甚至在我进入控制器的任何逻辑之前就已经开始了。有没有更好的方法来实现这一点?

如果您通过IIS托管.net core应用程序,您仍然可以将web.config文件添加到应用程序的根目录中。当您在较大的文件上载上遇到超时或404错误时,很可能是maxAllowedContentLength问题

有一些很好的答案更详细地描述了这一点

简单的回答是,如果您使用IIS托管,请将其添加到web.config文件中

<system.webServer>
    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="52428800" /> <!--50MB-->
      </requestFiltering>
    </security>
  </system.webServer>


您的其他终结点是否正常工作?例如,api/FOO是否返回任何内容?应用程序中的所有内容都正常工作,包括上载不到22秒的文件。您正在测试的文件上载有多大?超时?有一个关于文件大小的设置,可以接受0.50MB。大约10-15MB的文件似乎正常工作。添加传统上,我在本地测试时会上载文件,因此我不认为它一定是特定于应用程序的。如果您是通过IIS托管的,我会查看链接以确认您的azure web应用的设置不小于50MB。我很困惑。“azure web应用”不表示它不是IIS托管的吗?如果它不是IIS托管的,该怎么办?