zoukankan      html  css  js  c++  java
  • DataTable 创建并赋值全过程 List转DataTable

    有一个List数据源,需要转成DataTable:

    基本步骤:

    1、创建一个新的DataTable
    2、创建DataTable的各个列(DataTable.Columns)
    3、单行数据赋值(DataRow):通过名称赋值
    4、单行数据添加到新的DataTable中(DataTable.Rows.Add(dr.ItemArray))

    示例代码:

    bool isNewTable = true;
    /*省略部分代码*/
    int FieldCount = sqlDr.FieldCount;
    DataTable newDt = new DataTable();
    //创建表的各列
    for (int i = 0; i < FieldCount; i++)
    {
        var name = sqlDr.GetName(i);
        var TypeName = sqlDr.GetDataTypeName(i);
        var FieldType = sqlDr.GetFieldType(i);
        var data = sqlDr[i];//.ToString()
    
        //加一列
        //dt.Columns.Add(name, System.Type.GetType("System.String"));
        newDt.Columns.Add(name, FieldType);
        if (isNewTable)
        {
            retDt.Columns.Add(name, FieldType);
        }    
    }
    //单行数据赋值
    DataRow dr = newDt.NewRow();
    for (int i = 0; i < FieldCount; i++)
    {
        var name = sqlDr.GetName(i);
        var TypeName = sqlDr.GetDataTypeName(i);
        var FieldType = sqlDr.GetFieldType(i);
        var data = sqlDr[i];//.ToString()                        
        dr[name] = data; //通过名称赋值
                         //dr[i] = data;//通过索引赋值
    
    }
    newDt.Rows.Add(dr.ItemArray);
    //一行数据
    //retDt.ImportRow(newDt.Rows[0]);
    retDt.Rows.Add(dr.ItemArray);
    
    /*省略部分代码*/
    isNewTable = false;
    斩后知
  • 相关阅读:
    IIS代理
    NODEJS
    js图表插件
    注册nodejs程序为windows服务
    中断子系统7_中断出口处理
    Leetcode: Sort List
    jquery 鼠标经过放大图片
    在Tomcat上运行ADF Essentials应用
    简谈HTML5与APP技术应用
    Boost的Serialization和SmartPoint搭配使用
  • 原文地址:https://www.cnblogs.com/dyhao/p/14682225.html
Copyright © 2011-2022 走看看