手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#实现从多列的DataTable里取需要的几列
C#实现从多列的DataTable里取需要的几列
摘要:本文实例讲述了C#实现从多列的DataTable里取需要的几列的方法。分享给大家供大家参考,具体如下:方法一:也是广为人知的一种:YourD...

本文实例讲述了C#实现从多列的DataTable里取需要的几列的方法。分享给大家供大家参考,具体如下:

方法一:

也是广为人知的一种:

YourDataTable.Columns.Remove("列名");

但是这种情况只适合于去掉很少列的情况。

如果有很多列我却只要一两列呢,那就得用方法二了。

方法二:

复制代码 代码如下:DataTable dat = YourDataTable.DefaultView.ToTable(false, new string[] { "你要的列名", "你要的列名" });

补加dataTable操作相关内容:

对DataTable 的一些操作

在dataTable中最容易想到的是用for循环来操作,但事实不到万不得已是不会用form循环的,因为效率一般不高。

1) 取行

取行一般用rowfilter

DataTable datSource;//数据源表 //过滤表 DataView davTemp = new DataView(datSource, "过滤条件", "排序字段", DataViewRowState.各种 状态); //把过滤后的表赋给新表 DataTable datNew = davTemp.ToTable();

2)取表的某列或多列

DataTable datSource;//数据源表 DataTable datNew= datSource.DefaultView.ToTable(false, new string[] { "列名", "列名" .....});

3)复制某行的值[前提是表结构或列数相同]

DataTable datSource; DataTable datNew; datSource.Rows[i].ItemArray= datNew. Rows[i].ItemArray;

4)表列数相同,但是却列名不同,想复制值怎么办?

换个思维方式,既然列数相同,只是列名不同,为什么不改变列名呢?

如下:

DataTable datSource; DataTable datNew; datNew= datSource.Copy(); datNew.Columns["FirstColumn"].ColumnName = "YourColumnName";

5)调整列的位置SetOrdinal();

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#程序设计有所帮助。

【C#实现从多列的DataTable里取需要的几列】相关文章:

深入C# 内存管理以及优化的方法详解

C#实现类似qq的屏幕截图程序

C#实现的最短路径分析

C#操作EXCEL DataTable转换的实例代码

C#实现窗体淡入淡出效果的方法总结

用C#生成不重复的随机数的代码

利用thrift实现js与C#通讯的实例代码

c#中利用委托反射将DataTable转换为实体集的代码

c#中合并DataTable重复行的值

C# 图片剪切与缩小的实例

精品推荐
分类导航