System.ArgumentOutOfRangeException:“索引超出范围。必须为非负值并小于集合大小。 Arg_ParamName_Name”

出现索引超出范围的两种原因:

1:比如一个循环 for (int i = 1; i < Model.detailsModels.Count; i++){}

Model.detailsModels.Count小于0,这样就会出现索引超出范围,可以在循环上加一个判断if(Model.detailsModels.Count > 0){}

2:在获取数据时,数据库可能没有一个数据而导致出现该异常。比如控制器里面Model.detailsModels根本没有获取到对应数据,而在页面上展示的时候出现了该Model,这样也会报错。

原文地址:https://www.cnblogs.com/fengyulv/p/11331053.html