说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentException: 输入数组长度大于此表中的列数。
错误代码如下:
DataTable sourceTable = null;
sourceTable = GetTest(tableName);
if (sourceTable == null)
{
return;
}
DataRow[] rows = sourceTable.Select("主键<>''");
DataTable retTable = new DataTable();
retTable.Rows.Add(rows);
,原因在于DataTable retTable = new DataTable();此时retTable已经生成,但是,此时并未给此表添加列,因此retTable表里的列数为0,在你dt.Rows.Add(rows);时就会异常。
解决的方法是:在DataTable retTable = new DataTable();之后使用retTable.Columns.add("列名");给retTable表对象加上列.然后再添加行。