用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > Net教程

DataTable类Clone方法与Copy方法的区别分析

时间:2015-01-29  来源:互联网  作者:佚名

DataTable.Clone 方法:克隆 DataTable 的结构,包括所有 DataTable 架构和约束。

DataTable.Copy 方法:复制该 DataTable 的结构和数据。

我们可以编写如下的程序,进行验证:
复制代码 代码如下:
        static string connStr = "Server=.\\sqlexpress;Initial Catalog=hr;Integrated Security=True";

        static void Clone()
        {
            using (SqlConnection conn = new SqlConnection(connStr))
            {
                string sql = "select * from emp";
                SqlDataAdapter da = new SqlDataAdapter(sql, conn);
                DataTable dt = new DataTable();
                da.Fill(dt);
                DataTable dtClone = dt.Clone();
                Print(dtClone);
            }
        }

        private static void Print(DataTable dtClone)
        {
            foreach (DataColumn col in dtClone.Columns)
            {
                Console.Write(col.DataType+"\t");
            }
            Console.WriteLine();
            foreach (DataRow row in dtClone.Rows)
            {
                Console.Write(row[0] + "\t" + row[1] + "\t" + row[2] + "\n");
            }
            Console.WriteLine();
        }
        static void Main(string[] args)
        {
            Clone();//仅仅复制表结构
            Copy();//复制表结构及数据
            Console.ReadKey();
        }

        private static void Copy()
        {
            using (SqlConnection conn = new SqlConnection(connStr))
            {
                string sql = "select * from emp";
                SqlDataAdapter da = new SqlDataAdapter(sql, conn);
                DataTable dt = new DataTable();
                da.Fill(dt);
                DataTable dtCopy = dt.Copy();
                Print(dtCopy);
            }
        }
    }

来顶一下
返回首页
返回首页
推荐资讯
如何解决Ajax请求结果的缓存问题说明 如何解决Ajax请求结果的缓存问题说在默认情况下,IE会针对请求地址缓存Ajax请求的结果。换句话
dhtmlxGrid 添加行号详细步骤 dhtmlxGrid 添加行号详细步骤一、添加行号,效果如下: 二、设置属性 设置gridView属性:
相关文章
栏目更新
栏目热门