我知道我提供答案已经很晚了,但是,我们可以在答案列表中再添加一个。
由于 datatable.select 以数组的形式为我们提供结果,因此要知道我们正在为每个行数组中的列获取 itemarray。用下面的例子简化这个语句。
如果我们知道/记住/使用列位置/编号而不是列名,我们可以使用“ItemArray”
//ID Name Age
//100 Name 100 Age 100
//101 Name 101 Age 101
//102 Name 102 Age 102
假设单行。
DataTable dt=new DataTable();
//Assigning some data into dt. with columns ID, Name, Age.
DataRow[] dr=dt.Select("ID=100");
string PersonID=dr[0].ItemArray[0].Tostring().trim(); //first column is ID
string PersonName=dr[0].ItemArray[1].Tostring().trim(); //second column is Name
string PersonAge=dr[0].ItemArray[2].Tostring().trim(); //third column is Age
因此变量将具有以下详细信息。
// PersonID= 100; PersonName= Name 100; PersonAge= Age 100
假设行>1(本例中为 2)
dr=dt.Select("ID>100");
string PersonID_1=dr[0].ItemArray[0].Tostring().trim(); //first column is ID
string PersonName_1=dr[0].ItemArray[1].Tostring().trim(); //second column is Name
string PersonAge_1=dr[0].ItemArray[2].Tostring().trim(); //third column is Age
string PersonID_2=dr[1].ItemArray[0].Tostring().trim(); //first column is ID
string PersonName_2=dr[1].ItemArray[1].Tostring().trim(); //second column is Name
string PersonAge_2=dr[1].ItemArray[2].Tostring().trim(); //third column is Age
因此变量将具有以下详细信息。
// PersonID_1= 101; PersonName_1= Name 101; PersonAge_1= Age 101
// PersonID_2= 102; PersonName_2= Name 102; PersonAge_2= Age 102
需要记住的一点:第一行或第一列的索引 id 总是从 0 开始。因此,dr[0] 是第一行 & ItemArray[0] 是第一列