源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

C#实现从多列的DataTable里取需要的几列

  • 时间:2022-09-04 08:19 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:C#实现从多列的DataTable里取需要的几列
本文实例讲述了C#实现从多列的DataTable里取需要的几列的方法。分享给大家供大家参考,具体如下: [b]方法一:[/b] 也是广为人知的一种:
YourDataTable.Columns.Remove("列名");

但是这种情况只适合于去掉很少列的情况。 如果有很多列我却只要一两列呢,那就得用方法二了。 [b]方法二:[/b]
[u]复制代码[/u] 代码如下:
DataTable dat = YourDataTable.DefaultView.ToTable(false, new string[] { "你要的列名", "你要的列名" });
[b]补加dataTable操作相关内容:[/b] 对DataTable 的一些操作 在dataTable中最容易想到的是用for循环来操作,但事实不到万不得已是不会用form循环的,因为效率一般不高。 [b]1)  取行[/b] 取行一般用rowfilter
DataTable datSource;//数据源表
//过滤表
DataView davTemp = new DataView(datSource, "过滤条件", "排序字段", DataViewRowState.各种 状态);
//把过滤后的表赋给新表
DataTable datNew = davTemp.ToTable();

[b]2)取表的某列或多列[/b]
DataTable datSource;//数据源表
DataTable datNew= datSource.DefaultView.ToTable(false, new string[] { "列名", "列名" .....});

[b]3)复制某行的值[前提是表结构或列数相同][/b]
DataTable datSource;
DataTable datNew;
datSource.Rows[i].ItemArray= datNew. Rows[i].ItemArray;

[b]4)表列数相同,但是却列名不同,想复制值怎么办?[/b] 换个思维方式,既然列数相同,只是列名不同,为什么不改变列名呢? 如下:
DataTable datSource;
DataTable datNew;
datNew= datSource.Copy();
datNew.Columns["FirstColumn"].ColumnName = "YourColumnName";

[b]5)调整列的位置SetOrdinal();[/b]
DataTable dat = new DataTable();
//添加三列
dat.Columns.Add("col1");
dat.Columns.Add("col2");
dat.Columns.Add("col3");
//添加一行数据
dat.Rows.Add(1,2,3);
//把第三列放到第一的位置
dat.Columns["col3"].SetOrdinal(0);

希望本文所述对大家C#程序设计有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部