开发环境:.Net Core 5.0 + MVC 进行开发
背景:在上传文件是文件时报错(上传图片时不会),所以应该是大小限制
解决方法:
1. 在Startup.cs的ConfigureServices方法中添加以下内容:
//解决上传文件的大小限制,设置接收文件长度的最大值
services.Configure<FormOptions>(options =>
{
options.ValueLengthLimit = int.MaxValue;
options.MultipartBodyLengthLimit = int.MaxValue;
options.MultipartHeadersLengthLimit = int.MaxValue;
});
services.AddMvc();
2.创建一个web.config:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.webServer>
<security>
<requestFiltering>
<!--单位:字节。 -->
<requestLimits maxAllowedContentLength="2147483648" />
<!-- 2 GB -->
</requestFiltering>
</security>
</system.webServer>
</configuration>
以上就是大文件上传失败的解决方案。
另外,还可以在上传的接口上添加标签
[DisableRequestSizeLimit] //不限制大小
[RequestSizeLimit(30000000)] //限定指定大小范围,单位为字节,这里就是 30M
public async Task<JsonResult> Upload(string dir)
//todo
}