Asp.net实现选择性的保留DataTable中的列
程序员文章站
2024-03-05 19:15:19
复制代码 代码如下: //数据 datatable dtobject = dt; //保留列 string[] savecolumns = new string[5]; s...
复制代码 代码如下:
//数据
datatable dtobject = dt;
//保留列
string[] savecolumns = new string[5];
savecolumns[0] = "x";//保留列1
savecolumns[1] = "xx";//保留列2
savecolumns[2] = "xxx";
savecolumns[3] = "xxxx";
savecolumns[4] = "xxxxx";
//移除不需要的列
for (int i = dtobject.columns.count-1; i >= 0; i--)//注意此处,一般习惯用i++则会引发outofindex异常,由于部分列被移除,列索引减少,i++会超出不断减少的索引总数,注意。
{
//移除指示器
bool remove = true;
//是否在保留列中
for (int j = 0; j < savecolumns.length; j++)
{
if (dtobject.columns[i].columnname == savecolumns[j])
{
//保留列不移除
remove = false; break;
}
}
if (remove)
{
//移除列
dtobject.columns.remove(dtobject.columns[i].columnname);
}
}
return dtobject;