当我向控制器提交一个包含1024个以上项目的数组(当前为2500个项目(时,会出现异常。你可以提交的项目数量似乎有一个最大限制,即1024个。
它似乎是在MvcOptions中设置的,但我使用的是.Net Core 3.0和端点路由,所以我无法通过UseMVC访问MvcOptions。
我怎样才能提高这个限额?
我以前通过添加一个helper属性提高了限制,如下所示。然而,我不确定我需要在哪里设置这个特定的限制——它似乎不是HttpContext.Features.的一部分
public void OnAuthorization(AuthorizationFilterContext context)
{
var features = context.HttpContext.Features;
var formFeature = features.Get<IFormFeature>();
if (formFeature == null || formFeature.Form == null)
{
features.Set<IFormFeature>(new FormFeature(context.HttpContext.Request, _formOptions));
}
}
对于.net核心3.1
更新启动文件中的以下代码
services.AddMvc(options =>
{
options.MaxModelBindingCollectionSize = int.MaxValue;
});
在启动#ConfigureServices 时
services.Configure<FormOptions>(options => options.ValueCountLimit = 5000); // select your max limit