zoukankan      html  css  js  c++  java
  • C# 将DataTable一行放入另一个DataTable中

    http://blog.csdn.net/huyu107/article/details/53509171

    概述

    从一个DataTable中取一行放到另一个DataTable里报错: 该行已经属于另一个表

    第一种方法:

    DataTable dt = new DataTable();
    dt = ds.Tables["All"].Clone();//克隆All的结构传递给dt
    DataRow[] dr=this.dataSet31.Tables["Product"].Select("bc=1"); //通过条件得到符合条件的行
    for(int i=0;i<dr.Length;i++)
    {
        //将数组元素加入表...
        dt.Rows.Add(dr[i]);//出错提示为:该行已经属于另一个表
    }
    // 修改后
    DataTable dt = new DataTable();
    dt = ds.Tables["All"].Clone();//克隆All的结构传递给dt
    DataRow[] dr=this.dataSet31.Tables["Product"].Select("bc=1"); //通过条件得到符合条件的行
    for(int i=0;i<dr.Length;i++)
    {
        //将数组元素加入表...
        dt.Rows.Add(dr[i].ItemArray);
    }

    第二种方法:

    DataTable dt1 = new DataTable();
    DataTable calcdt = new DataTable();
    // dt1只是获取表结构,无数据;
    // calcdt 有表结构,有数据
    // 原方法
    foreach (DataRow dr in calcdt.Rows)
    {
        dt1.Rows.Add(dr);
    }
    
    // 改进后的方法
    DataRow drcalc;
    foreach (DataRow dr in calcdt.Rows)
    {
        drcalc = dt1.NewRow();
        drcalc.ItemArray = dr.ItemArray;
        dt1.Rows.Add(drcalc);
    }
  • 相关阅读:
    Go 解析JSON
    查看端口占用并结束进程
    DNS
    u盘禁用
    主机规划与磁盘分区
    响应式设计初识
    SVG基础
    BootStrap入门
    python中 "is"和"=="的区别
    关于C++模板不能分离编译的问题思考
  • 原文地址:https://www.cnblogs.com/LuoEast/p/7685981.html
Copyright © 2011-2022 走看看