我从excel文档中创建了一个列表,其中包含从第一个开始的所有其他部分的编号,以及从第二个开始的每个其他行的价格。
让我说我像这样初始化一个数据表..
DataTable priceListTable = new DataTable();
priceListTable.Columns.Add("ItemNumber", typeof(string));
priceListTable.Columns.Add("Price", typeof(Float));
我的列表(名为recordList)看起来像这样;
001-001
1.45
001-002
3.49
如何获取列表的前两行以填充dataTable的列?
答案 0 :(得分:1)
这是一个解决方案。
从第2个项目开始一次循环列表2个项目。这可确保您始终拥有一对要使用的项目。
for (int i = 1; i < list.Count; i += 2)
{
DataRow row = table.NewRow();
row["ItemNumber"] = list[i-1];
row["Price"] = list[i];
table.Rows.Add(row);
}
答案 1 :(得分:0)
string ItemNumber = "ItemNumber";
string Price = "Price";
DataTable priceListTable = new DataTable();
DataRow row;
priceListTable.Columns.Add(ItemNumber);
priceListTable.Columns.Add(Price);
int counter = 0;
foreach(string s in recordList)
{
myTableSize++;
}
foreach(string s in recordList)
{
if (counter < myTableSize)
{
row = priceListTable.NewRow();
row[ItemNumber] = recordList[counter];
row[Price] = recordList[counter + 1];
priceListTable.Rows.Add(row);
counter++;
counter++;
}