C# DataTableをコピーする

DataTableをそのまま全てコピーする方法と構造のみコピーする方法を紹介します。

 

スポンサーリンク

 


DataTable dt = new DataTable();

// DataTableに列を追加
dt.Columns.Add("ID", typeof(int));
dt.Columns.Add("氏名", typeof(string));
dt.Columns.Add("住所", typeof(string));
dt.Columns.Add("家賃", typeof(int));

// DataRowを使って2レコード追加
for (int i = 0; i < 2; i++)
{
    DataRow dr = dt.NewRow();
    if (i == 0)
    {
        dr["ID"] = i + 1;
        dr["氏名"] = "山田太郎";
        dr["住所"] = "東京都";
        dr["家賃"] = 100000;
        dt.Rows.Add(dr);
    }
    else
    {
        dr["ID"] = i + 1;
        dr["氏名"] = "山田花子";
        dr["住所"] = "神奈川県";
        dr["家賃"] = 90000;
        dt.Rows.Add(dr);
    }
}

DataTable dtCopy = new DataTable();
DataTable dtClone = new DataTable();

// データをまるごとコピー
dtCopy = dt.Copy();

// 構造だけコピー
dtClone = dt.Clone();

 

Copyメソッドを使った結果

データテーブルコピー

 

Cloneメソッドを使った結果

データテーブルクローン

スポンサーリンク

SNSでもご購読できます。

コメントを残す