Pages

2012/04/19

[C#] DataTable の作成

度忘れすることが多い(?)、DataTable の作成(初期化)方法。
基本的な流れとしては、
  1. インスタンス化。
  2. テーブル列定義。
  3. テーブル行にデータ追加。
  4. DataTable 自体に追加。
である。

// DataTable 作成。
var dt = new DataTable();

// 行定義
// このセクションを無視すると、列 ' ' はテーブル  に属していません。というエラーが出る。
dt.Columns.Add("Name", typeof(string));        // 文字列
dt.Columns.Add("Score", typeof(int));           // 数値
dt.Columns.Add("Entry", typeof(DateTime));  // 日付

// 行追加
var dr = dt.NewRow();
dr["Name"] = "ほげ太郎";
dr["Score"] = "100";
dr["Entry"] = DateTime.Now;
dt.Rows.Add(dr);
var dr2 = dt.NewRow();
dr2["Name"] = "ほげ次郎";
dr2["Score"] = "40";
dr2["Entry"] = DateTime.MinValue;
dt.Rows.Add(dr2);

// GridView にバインド
GridView1.DataSource = dt;
GridView1.DataBind();
行の定義で定義した型を順守する。
数値型や日付型なら有効な日付を入力しないとエラーで落ちる。
' DataTable 作成。
Dim dt = New DataTable()

' 行定義
dt.Columns.Add("Name", GetType(String))
dt.Columns.Add("Score", GetType(Integer))
dt.Columns.Add("Entry", GetType(DateTime))

' 行追加
Dim dr = dt.NewRow()
dr("Name") = "ほげ太郎"
dr("Score") = "100"
dr("Entry") = DateTime.Now
dt.Rows.Add(dr)

  1. VBではこんな感じ。
Related Posts Plugin for WordPress, Blogger...