当项目里不用数据库,或者需要一种即时(不需要保存数据)的表结构的时候,可以考虑DataTable的创建。
一、创建DataTable:
DataTable newdt = new DataTable("T_Method");
添加新列:(列名,类型)
newdt.Columns.Add("Id", typeof(int));
newdt.Columns.Add("VarNum", typeof(string));
newdt.Columns.Add("BuySell", typeof(string));
newdt.Columns.Add("State", typeof(string));
newdt.Columns.Add("Count", typeof(int));
定义标题的显示名称,以及标识变量(自动增量)
newdt.Columns["Id"].AutoIncrement = true;
newdt.Columns["Id"].AutoIncrementSeed = 1;
newdt.Columns["Id"].Caption = "方案";
newdt.Columns["VarNum"].Caption = "品种";
newdt.Columns["BuySell"].Caption = "买卖";
newdt.Columns["State"].Caption = "状态";
newdt.Columns["Count"].Caption = "数量";
二、DataTable的增删改:
1、查询记录:
DataRow[] dr = newdt.Select("1=1");//查询全部
DataRow dr = newdt.Select("ID="+nid)[0];//查询某一条记录
DataRow[] dr = newdt.Select("VarNum Like 'TM'");//查询部分记录
2、 添加记录:
DataRow newRow = newdt.NewRow();//行
newRow["VarNum"] = "TM";
newRow["BuySell"] = "买入";
newRow["State"] = "订立";
newRow["Count"] = 2;
也可以直接添加记录:
newdt. Rows.Add(new object[] { VarNum, BuySell,State,Count});
3、删除记录
newdt.Rows.Remove(newdt.Select("ID=" + nid)[0]);
4、编辑记录:
DataRow dr=newdt.Select("ID=" + nid)[0];
dr.BeginEdit();
dr["VarNum"] = "TM1";
dr.EndEdit();