zoukankan      html  css  js  c++  java
  • 怎样向DataTable中添加属于另一个DataTable的DataRow 转

    [转] 怎样向DataTable中添加属于另一个DataTable的DataRow

    http://www.php168.com/html/981/93/93817/1.htm
    我 们经常需要向DataTable中添加一行数据,大多数的情况下都是把一些从UI的控件和程序的变量中收集的数据添加到DataTable中。如以下的语 句把供应商代码和名称添加到DataTable中:

    DataTable dtProvider = new DataTable();
    DataRow drRow = dtProvider.NewRow();
    drRow[0] = txtProviderCode.Text.Trim();
    drRow[1] = txtProviderName.Text.Trim();
    dtProvider.Rows.Add(drRow);

    大多数的情况下这几行语句是完全可以满足要求的。但 是如果想把另一个同样结构的DataTable的某一行添加到这个dtProvider中,就不能简单的添加了。否则会提示一个错误“This row belongs to another table.”。这个时候我们必须定义另一个DataRow,把源DataRow的数据赋到目的DataRow中,再Add进DataTable中就可以 了。如下所示:

    DataTable dtProvider = new DataTable();
    DataRow drTarget = dtProvider.NewRow();
    drTarget.ItemArry = drSource.ItemArry;
    // 注意:这里的drSource是另一个相同结构的DataTable中的一行。
    dtProvider.Rows.Add(drTarget);

    我们经常需要向DataTable中添加一行数据, 大多数的情况下都是把一些从UI的控件和程序的变量中收集的数据添加到DataTable中。如以下的语句把供应商代码和名称添加到DataTable 中:

    DataTable dtProvider = new DataTable();
    DataRow drRow = dtProvider.NewRow();
    drRow[0] = txtProviderCode.Text.Trim();
    drRow[1] = txtProviderName.Text.Trim();
    dtProvider.Rows.Add(drRow);

    大多数的情况下这几行语句是完全可以满足要求的。但 是如果想把另一个同样结构的DataTable的某一行添加到这个dtProvider中,就不能简单的添加了。否则会提示一个错误“This row belongs to another table.”。这个时候我们必须定义另一个DataRow,把源DataRow的数据赋到目的DataRow中,再Add进DataTable中就可以 了。如下所示:

    DataTable dtProvider = new DataTable();
    DataRow drTarget = dtProvider.NewRow();
    drTarget.ItemArry = drSource.ItemArry;
    // 注意:这里的drSource是另一个相同结构的DataTable中的一行。
    dtProvider.Rows.Add(drTarget);

  • 相关阅读:
    linux LVM详解
    Mysql SQL优化系列之——执行计划连接方式浅释
    Vue SSR常见问题、异常处理以及优化方案
    vue组件生命周期详解
    axios全局设置url公共请求头
    WebView中JS调用Android Method 遇到的坑整理
    node.js项目多环境配置
    用vue构建多页面应用
    前端系列-移动端开发踩过的一些坑
    Async:简洁优雅的异步之道
  • 原文地址:https://www.cnblogs.com/liye/p/1744620.html
Copyright © 2011-2022 走看看