C# DataTable 用法简介

C# DataTable 的常见用法:

(1)新建数据表。

DataTable dt=new DataTable();如果带个String参数,此参数表示表名。

(2)向表添加列。

//数据库的Nvarchar等类型,在此可用String兼容。可不指明数据类型  DataColumn dc = new DataColumn("商品编号", typeof(system.string));    dt.Columns.Add(dc);

(3)设置表特定行与列的数据值。

dt.Rows[i].SetField<int>(dc, int.Parse(hc.Values[i]);

(4)将某行数据加入到表。

dt.Rows.Add(dr.ItemArray);

(5)合并表。

DataTable ds=car.getGoods(v);	//从数据库里读出的表  dt.Merge(ds);	//将 ds 表合并到表 dt

(6)复制表。

dt = ds.Clone();

完整代码段:

protected void Page_Load(object sender, EventArgs e)  {          HttpCookie hc=Request.Cookies["goods"];          DataTable dt = new DataTable();          DataColumn dc1 = new DataColumn("商品编号");          DataColumn dc2 = new DataColumn("商品名称");          DataColumn dc3 = new DataColumn("商品重量");          DataColumn dc4 = new DataColumn("商品价格");          DataColumn dc5 = new DataColumn("购买数量");          dt.Columns.Add(dc1);          dt.Columns.Add(dc2);          dt.Columns.Add(dc3);          dt.Columns.Add(dc4);          dt.Columns.Add(dc5);          TemplateField fd = new TemplateField();          fd.HeaderText = "数量";          if (hc != null)          {              for (int i = 0; i < hc.Values.Count; i++)              {                  string c = hc.Values.Keys[i];                  string v = c.Replace("goodName", "");                  DataTable ds=car.getGoods(v);                  DataRow dr=ds.Rows[0];                 // fd.ItemTemplate = new gr                    //dt = ds.Clone();                  //dt.Merge(ds);                  dt.Rows.Add(dr.ItemArray);                  dt.Rows[i].SetField<int>(dc5,int.Parse( hc.Values[i]));                  }                GridView1.DataSource = dt;              GridView1.DataKeyNames = new string[] {"商品编号"};  			GridView1.DataBind();  			dt.Dispose();          }      }

参考文献

[1] yb6999 新浪博客.C#中的DataTable