首页 > 后端开发 > C++ > 如何在ASP.NET Core中增加文件上传大小限制?

如何在ASP.NET Core中增加文件上传大小限制?

Barbara Streisand
发布: 2025-01-29 01:26:09
原创
981 人浏览过

How to Increase File Upload Size Limits in ASP.NET Core?

提升ASP.NET Core文件上传大小限制

在ASP.NET Core中,您可能会遇到文件上传大小限制。要解决此问题,您需要同时考虑Web服务器(IIS)和ASP.NET Core服务器(Kestrel)施加的限制。

IIS文件大小限制

如您提供的链接资源中所述,IIS对文件上传大小有默认限制。要增加应用程序的此限制,请按照以下步骤操作:

  1. 打开IIS管理器。
  2. 导航到您的网站使用的应用程序池。
  3. 右键单击并选择“属性”。
  4. 在“限制”选项卡上,增加“最大允许内容长度”的值。

Kestrel文件大小限制

从ASP.NET Core 2.0开始,Kestrel也对文件上传施加了自己的限制。这些限制在KestrelServerLimits.cs文件中定义。

要增加Kestrel中的文件大小限制,您可以采用以下几种方法:

MVC操作方法

在特定的MVC操作方法或控制器上使用[RequestSizeLimit]特性来覆盖默认限制。例如:

<code class="language-csharp">[HttpPost]
[RequestSizeLimit(100_000_000)]
public IActionResult MyAction([FromBody] MyViewModel data)
{
}</code>
登录后复制

通用中间件

使用IHttpMaxRequestBodySizeFeature特性来修改每个请求的限制:

<code class="language-csharp">app.Run(async context =>
{
    context.Features.Get<IHttpMaxRequestBodySizeFeature>().MaxRequestBodySize = 100_000_000;
});</code>
登录后复制

全局配置

UseKestrelUseHttpSys的回调函数中修改MaxRequestBodySize属性来全局设置限制:

<code class="language-csharp">.UseKestrel(options =>
{
    options.Limits.MaxRequestBodySize = null; // 无限制
});

.UseHttpSys(options =>
{
    options.MaxRequestBodySize = 100_000_000;
});</code>
登录后复制

通过以上步骤,您可以同时增加ASP.NET Core中Web服务器和Kestrel服务器的文件上传大小限制。

以上是如何在ASP.NET Core中增加文件上传大小限制?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板