【C#】データテーブルから列を取得する【DataTable】
列を取得する(文字列)
「dt.Columns[“"]」のダブルコーテーション(“")中に
文字列で列名を指定する事で、列が取得できます。
ここでは、TANKA(単価)の列を取得していきます。
// データテーブルの初期化
DataTable dt = new DataTable();
// データテーブルの名前を指定
dt.TableName = "FRUIT";
// 列追加
dt.Columns.Add("HINMEI");
dt.Columns.Add("SURYO");
dt.Columns.Add("TANKA");
dt.Columns.Add("KINGAKU");
/*
今回の内容はここから
*/
// 列を取得する(文字列)
DataColumn dc = dt.Columns["TANKA"];
列を取得する(インデックス)
「dt.Columns[index]」のindex部分に
列のインデックスを指定する事で、列が取得できます。
ここでは、(SURYO)数量の列を取得していきます。
// データテーブルの初期化
DataTable dt = new DataTable();
// データテーブルの名前を指定
dt.TableName = "FRUIT";
// 列追加
dt.Columns.Add("HINMEI");
dt.Columns.Add("SURYO");
dt.Columns.Add("TANKA");
dt.Columns.Add("KINGAKU");
/*
今回の内容はここから
*/
// 列を取得する(インデックス)
DataColumn dc = dt.Columns[1];
コピペですぐ試せるソースコード
2種類の列取得方法を1つのソースにまとめました。
ソースコードをコピペするとそれぞれの動作が確認できると思います。
private void DataTable_Get_Columns()
{
DataTable dt = new DataTable();
// データテーブルの名前を指定
dt.TableName = "FRUIT";
// 列追加
dt.Columns.Add("HINMEI");
dt.Columns.Add("SURYO");
dt.Columns.Add("TANKA");
dt.Columns.Add("KINGAKU");
/*
今回の内容はここから
*/
DataColumn dc;
// 列名を指定して削除する(文字列)
dc = dt.Columns["TANKA"];
// 列を取得する(インデックス)
dc = dt.Columns[1];
}
まとめ
今回は2つの方法で、列を取得するソースコードを記載しました。
私的には、文字列で指定して列を取得する方法を推奨します。
用途にあったやり方、自分のやりやすい実装を採用していきましょう。
Microsoft 公式ページ
DataColumnCollection クラス
https://docs.microsoft.com/ja-jp/dotnet/api/system.data.datacolumncollection?view=netframework-4.0
お問い合わせ先
Twitterの利用再開しましたのでお問い合わせのある方はTwitterまでご連絡ください。
最近のコメント