C#.NETのサンプルコードを掲載しています。
      
DataTableをコピーする。
DataTableをコピーするサンプルです。

テストコード
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
DataTable dt = new DataTable("DataTable01");
DataTable dt2 = new DataTable("DataTable02");
DataRow dr = null;
// 列を定義します。
dt.Columns.Add("A", Type.GetType("System.String"));
dt.Columns.Add("B", Type.GetType("System.String"));
dt.Columns.Add("C", Type.GetType("System.String"));
// データを格納します。
for (int i = 1; i <= 5; i++)
{
    dr = dt.NewRow();
    dr["A"] = "A_" + i.ToString("00");
    dr["B"] = "B_" + i.ToString("00");
    dr["C"] = "C_" + i.ToString("00");
    dt.Rows.Add(dr);
}
// Copyは構造と値をコピーします。
dt2 = dt.Copy();

// Cloneは構造だけコピーします。
// dt2 = dt.Clone();


5〜16行まではdtに列を定義し、データを格納してます。
dtの中身はこうなってます。


18行目でdtをdt2へコピーしています。注意点はDataTableのCopy()はデータだけでなく
テーブルの構造までもコピーするという点です。dt2の中身をみるとdtと同様となってることが分かります。


同じ画像を使いまわしているわけではないです。
DataTableの名前まで同じになってます。
ちなみに21行目のClone()を行うと、データ構造だけコピーします。

      
DataSet






Copyright (C) 2011 - 2015 猫の気ままなC#日記