Copy和Clone

using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 社区学习
{
    class Program
    {
        static void Main(string[] args)
        {
            ParentDataTable a = new ParentDataTable();
            DataTable dt1 = a.ParentD().Copy();  // 复制,包括结构和数据等信息
            Console.WriteLine(dt1.Rows[0]["Name"].ToString());
            DataTable dt2 = a.ParentD().Clone();  // 仅仅复制其结构和关系
            Console.WriteLine(dt2.Rows[0]["Name"].ToString());
            Console.ReadKey();
        }
    }
    class ParentDataTable
    {
        public DataTable ParentD()
        {
            DataTable l_dtTable = new DataTable();  // 创建一个Datatable
            // 构建Datatable框架
            DataColumn l_dtColumn = l_dtTable.Columns.Add("ID", Type.GetType("System.Int16"));  // 设置属性列
            l_dtColumn.AllowDBNull = false;  // 是否允许为空值
            l_dtColumn.AutoIncrement = true;  // 自动增长
            l_dtColumn.AutoIncrementSeed = 1;  // 设置起始值
            l_dtColumn.AutoIncrementStep = 1;  // 设置步进
            l_dtColumn.Unique = true;  // 设置唯一
            DataColumn l_dtColumn2 = l_dtTable.Columns.Add("Name", Type.GetType("System.String"));
            l_dtColumn2.DefaultValue = "";  // 设置默认值
            l_dtColumn2.MaxLength = 20;  // 设置最大长度
            l_dtTable.Columns.Add("Sex", Type.GetType("System.Boolean"));  // 设置属性字段
            DataRow l_drOne = l_dtTable.NewRow();  // 创建新行
            l_drOne["Name"] = "namejr";
            l_drOne["Sex"] = true;
            l_dtTable.Rows.Add(l_drOne);  // 添加一行
            DataRow l_drTwo = l_dtTable.NewRow();
            l_drTwo["Name"] = "namejr";
            l_drTwo["Sex"] = true;
            l_dtTable.Rows.Add(l_drTwo);
            return l_dtTable;
        }
    }
}

猜你喜欢

转载自www.cnblogs.com/namejr/p/11246779.html