C# Asp.net的DataRow中的行
这是一个主观的问题,但我仍然希望我能找到帮助。C# Asp.net的DataRow中的行,c#,asp.net,C#,Asp.net,这是一个主观的问题,但我仍然希望我能找到帮助。 我正在学习如何将数据库中的两个表合并为一个单独的数据表 DataTable mdt = new DataTable(); mdt.Columns.Add("products"); mdt.Columns.Add("price"); for (int i = 0; i < A.Rows.Count; i++) { DataRow dr = mdt.NewRow()
我正在学习如何将数据库中的两个表合并为一个单独的数据表
DataTable mdt = new DataTable();
mdt.Columns.Add("products");
mdt.Columns.Add("price");
for (int i = 0; i < A.Rows.Count; i++)
{
DataRow dr = mdt.NewRow();
dr["product"] = A.Rows[i]["product"].ToString();
dr["price"] = A.Rows[i]["price"].ToString();
//A is a DataTable
mdt.Rows.Add(dr);
}
DataTable mdt=newdatatable();
mdt.列。添加(“产品”);
mdt.列。添加(“价格”);
for(int i=0;i
我可以理解数据被添加到Datatable的行中。
这就是我所理解的:
DataTable的列product由dr[“product”]分配了一个值。如果我错了,请更正我。但是这是如何a.Rows[i][“product”]。ToString()代码>工作。这将有助于:
A = DataTable
A.Rows = Collection of DataRows in A
A.Rows[i] = i-th row from collection
A.Rows[i]["product"] = Column "product" in row (return type of expression is object)
因此,当您执行dr[“product”]=A.Rows[i][“product”].ToString()时代码>,则将当前行的product
列的值从数据表A分配给新数据行的product
列。类似地,price
列。的[“product”].ToString()将使用列名product获取单元格的值,并将其转换为要分配给新行的字符串。行[i]
表示分配值的索引。我的意思是,对于第一个循环,值为0,对于第二个循环,值为1。因此,对于第一个循环,产品和价格的值添加到第一行,索引为0。类似地,对于第二个循环,产品和价格的值添加到第二行,索引为1。
对于第二部分,即[“product”].ToString()
,它只是将product的值转换为字符串
编辑
因为A是一个已经填充的数据表。我们对该语句所做的是,从集合中获取数据表的第i行,将其转换为字符串,并将其分配到数据行中的“product”列。那行[i][“price”]
是让我困惑的部分。它不是数组。是吗?