欢迎来到.net学习网

欢迎联系站长一起更新本网站!QQ:879621940

您当前所在位置:首页 » C# » 正文

热门阅读

巧用DataColumn的Expression属性复制列

创建时间:2011年07月27日 23:19  阅读次数:(10594)
分享到:
以前在复制DataTable某列的值的时候,总是循环DataTable的所有行,逐行逐行的赋值,如下代码:

//代码中假设dt中已经存在了列A
DataTable dt = GetDataTable();
DataColumn col = new DataColumn();
col.ColumnName = "B";
dt.Columns.Add(col);
foreach (DataRow dr in dt.Rows)
{
   dr["B"] = dr["A"];
}



一直偶然的机会发然了DataColumn的Expression属性,查看了Expression属性的作用了后,发现复制列的功能就简化多了,如下代码:

//代码中假设dt中已经存在了列A
DataTable dt = GetDataTable();
DataColumn col = new DataColumn();
col.ColumnName="B";
col.Expression = "A";
col.DataType = dt.Columns["A"].DataType;
dt.Columns.Add(col);


其实Expression的属性的功能远远不至这个,它可以做统计列,排行列,也可以做行验证,它支持的函数也是比较的丰富,大家有兴趣好好上网查查吧。<
来源:.net学习网
说明:所有来源为 .net学习网的文章均为原创,如有转载,请在转载处标注本页地址,谢谢!
【编辑:Wyf

打赏

取消

感谢您的支持,我会做的更好!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

最新评论

共有评论2条
  • #1楼  评论人:646282992ym@163.com  评论时间:2012-3-11 15:48:41
  • 在同一個datatable里複製出來的數據好像用處不大吧?能把他複製到另外一個表嗎?
  • #2楼  评论人:Wyf  评论时间:2012-3-11 18:09:38
  • 这是只是举个例子,Expression表达式可以自定义啊,比如两个列的乘积等,还可以用IIF,ISNULL等函数。功能很强大。复制到另外一个表,应该只有先在另一个表创建列,再复制值过去了。
发表评论:
留言人:
内  容:
请输入问题 90+39=? 的结果(结果是:129)
结  果: