action的参数列表中有[fromform]并且是list进行接收数据的,在list的条数超出一定的数量时,ui端调用接口的时候可能会抛出500错误,查看console的消息却显示是跨域,但经过分析后很明显不是跨域问题。几番思量,仍认为是数据超长的问题。
我选择的解决方案是在startup.cs内的ConfigureServices方法内添加一段对接收数据的最大容量限制,
services.Configure<FormOptions>(options =>
{
options.ValueCountLimit = int.MaxValue; // 5000 items max
//options.ValueLengthLimit = 1024 * 1024 * 100; // 100MB max len form data
options.ValueLengthLimit = int.MaxValue; //
});
加上之后再从ui传100多条数据过来,成功!
有时候自己的猜想是正确的,但是没办法佐证自己的猜想。打上断点,附加进程,本地联调,抛错的时候精确获取到错误信息,再问度娘!