此问题可能由于默认值限制造成,ASP.NET Core中默认情况下允许接收最多100个项目。要解决此问题,可以在控制器中添加以下代码:
[HttpPost] [RequestFormLimits(MultipartBodyLengthLimit = 209715200)] public IActionResult MyAction(MyModel myModel) { // 这里处理提交的表单数据 }
在上面的代码中,RequestFormLimits属性允许设置从MultipartFormData或Application / x-www-form-urlencoded接收的HTTP请求内容的大小限制(默认为128K)。通过设置MultipartBodyLengthLimit的值可以更改此限制的大小。209715200表示200MB,您可以根据需要进行更改。
另一种选项是使用Request体中的Stream读取表单数据。您可以在控制器中尝试以下代码:
[HttpPost]
public async Task
// 这里处理提交的表单数据
} }
使用Stream的好处是,它可以处理任何大小的表单数据。