我如何在C Sharp中使用foreach获取前2个数据值

时间:2018-08-06 07:49:47

标签: c# foreach datatable

表名称:obiValues

ACME    
Pavillions    
Shaws    
East

代码:

foreach (DataRow row in obiValues.row)
{
    this.testContext.WriteLine(row[0].ToString());
}

输出如下:

ACME
Pavillions

3 个答案:

答案 0 :(得分:2)

您可以使用LINQ .Take()方法:

foreach (DataRow row in obiValues.row.Take(2))

这将迭代前两个项目。

答案 1 :(得分:2)

如果只需要前两行,请执行以下操作:

foreach (var row in obiValues.AsEnumerable().Take(2))
{
    this.testContext.WriteLine(row[0].ToString());
}

答案 2 :(得分:0)

从foreach切换为for,因为foreach一次迭代一项。在for周期中,您可以轻松地从数据源访问其他元素:

for (int i = 0; i < obiValues.row.Count - 1; i++)
{     
 this.testContext.WriteLine(obiValues.row[i].ToString());
 this.testContext.WriteLine(obiValues.row[i + 1].ToString());
}