DataTable如何去掉值全为NULL或者空的列

iceMung 2013-04-15 03:15:09
A B C
1 3
2 0
3

例如上面的DataTable,删除列B。有没有简单的方法~
...全文
1202 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
bbwolf 2013-04-16
  • 打赏
  • 举报
回复
引用 9 楼 iceMung 的回复:
引用 7 楼 bbwolf 的回复:C# code?123456789for(int i = t.Columns.Count - 1 ; i >= 0 ; i --){ foreach(DataRow r in t.Rows) { if(!r.IsNull(t.Columns[i])) continue; } t.C……
你想要个什么类型的答案,这个答案应该是一个最容已理解的了。
iceMung 2013-04-15
  • 打赏
  • 举报
回复
引用 7 楼 bbwolf 的回复:
C# code?123456789for(int i = t.Columns.Count - 1 ; i >= 0 ; i --){ foreach(DataRow r in t.Rows) { if(!r.IsNull(t.Columns[i])) continue; } t.Columns.RemoveAt(i)……
这个方法有点太基础了,不过还是谢谢你
bbwolf 2013-04-15
  • 打赏
  • 举报
回复
中间的r.IsNull(t.Columns[i])可以改成r[t.Columns[i]].ToString() != ""
bbwolf 2013-04-15
  • 打赏
  • 举报
回复

for(int i = t.Columns.Count - 1 ; i >= 0 ; i --)
{
    foreach(DataRow r in t.Rows)
    {
        if(!r.IsNull(t.Columns[i]))
          continue;
    }
    t.Columns.RemoveAt(i);
}
iceMung 2013-04-15
  • 打赏
  • 举报
回复
引用 5 楼 shawn_yang 的回复:
这个datatable是如果生产的?是读取xml还是读取自数据库? 从根源上处理不是更好吗
在其他地方通过服务传递过来的~
shawn_yang 2013-04-15
  • 打赏
  • 举报
回复
这个datatable是如果生产的?是读取xml还是读取自数据库? 从根源上处理不是更好吗
iceMung 2013-04-15
  • 打赏
  • 举报
回复
引用 3 楼 shawn_yang 的回复:
引用 2 楼 iceMung 的回复:引用 1 楼 shawn_yang 的回复:select A,B from table1 能详细点吗,不是很明白你的意思 sorry,写错了,应该是select A,C from table1 其实就是说你用一个查询语句,只显示你要的列即可
...关键就是如何判断DataTable的某一列为空,为空则删除。 我现在的做法是判断DataTable.Select(“列 is not null”)的结果是否为空,但感觉不是很好,想寻求一下更好的方法。
shawn_yang 2013-04-15
  • 打赏
  • 举报
回复
引用 2 楼 iceMung 的回复:
引用 1 楼 shawn_yang 的回复:select A,B from table1 能详细点吗,不是很明白你的意思
sorry,写错了,应该是select A,C from table1 其实就是说你用一个查询语句,只显示你要的列即可
iceMung 2013-04-15
  • 打赏
  • 举报
回复
引用 1 楼 shawn_yang 的回复:
select A,B from table1
能详细点吗,不是很明白你的意思
shawn_yang 2013-04-15
  • 打赏
  • 举报
回复
select A,B from table1

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧