使用ef查询,写sql语句的一般情况报数组超出了索引都认为是[i]里面的值超出了,但是执行sql报超出了索引,让人很蒙在网上找了半天也没有结果,后来只能自己来解决了。在异常里面能看到dbnull<int>这个,感觉应该是类型的问题,数据库是decimal,后来改成decimal并且数据库为可空的,加个?可空类型就解决问题了总结:sql查询出来的要和定义的实体model要对应,特别是字段类型和可空类型的处理。