c# datatable foreach
时间: 2023-08-29 11:10:33 浏览: 133
在 C# 中,可以通过使用 `DataTable` 对象来表示一个表格。要对该表格中的每一行执行某个操作,可以使用 `foreach` 循环遍历表格中的所有行。以下是一个示例代码:
```csharp
DataTable dt = new DataTable();
// 假设该表格包含两列:Name 和 Age
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("Age", typeof(int));
// 向表格中添加几行数据
dt.Rows.Add("张三", 25);
dt.Rows.Add("李四", 30);
dt.Rows.Add("王五", 35);
// 使用 foreach 循环遍历表格中的每一行
foreach (DataRow row in dt.Rows)
{
// 获取当前行中的 Name 和 Age 列的值
string name = row["Name"].ToString();
int age = Convert.ToInt32(row["Age"]);
// 在控制台输出当前行的信息
Console.WriteLine("姓名:{0},年龄:{1}", name, age);
}
```
上述代码中,我们首先定义了一个 `DataTable` 对象,并向其中添加了几行数据。接着,使用 `foreach` 循环遍历表格中的每一行,获取每一行中的 Name 和 Age 列的值,并在控制台输出该行的信息。
相关问题
c# datatable 分组foreach
可以使用 LINQ to DataSet 来对 DataTable 进行分组操作,然后再使用 foreach 循环遍历分组后的结果。以下是示例代码:
```csharp
using System;
using System.Data;
using System.Linq;
class Program
{
static void Main()
{
// 定义一个 DataTable
DataTable dt = new DataTable();
dt.Columns.Add("Category", typeof(string));
dt.Columns.Add("Product", typeof(string));
// 添加数据
dt.Rows.Add("Fruit", "Apple");
dt.Rows.Add("Fruit", "Banana");
dt.Rows.Add("Vegetable", "Carrot");
dt.Rows.Add("Vegetable", "Broccoli");
// 使用 LINQ 进行分组
var groups = from row in dt.AsEnumerable()
group row by row.Field<string>("Category") into g
select new { Category = g.Key, Products = g };
// 遍历分组后的结果
foreach (var g in groups)
{
Console.WriteLine(g.Category + ":");
foreach (var row in g.Products)
{
Console.WriteLine(" " + row.Field<string>("Product"));
}
}
}
}
```
上述代码中,使用 LINQ 的 `group by` 子句将 DataTable 按照 Category 列进行分组,然后使用匿名类型来保存每个分组的分类和对应的行集合。最后使用嵌套的 foreach 循环遍历分组后的结果,输出每个分类和该分类下的所有产品。
C#datatable
C#中的DataTable是一种表示内存中数据表的对象。它类似于数据库中的表格,可以包含多个行和列,并可以使用各种方法来操作这些数据。以下是一些使用DataTable的常见操作:
1. 创建DataTable对象
```
DataTable dt = new DataTable();
```
2. 添加列
```
dt.Columns.Add("Column1", typeof(int));
dt.Columns.Add("Column2", typeof(string));
```
3. 添加行
```
DataRow row = dt.NewRow();
row["Column1"] = 1;
row["Column2"] = "Hello";
dt.Rows.Add(row);
```
4. 遍历行和列
```
foreach (DataRow row in dt.Rows)
{
foreach (DataColumn col in dt.Columns)
{
Console.WriteLine(row[col]);
}
}
```
5. 筛选数据
```
DataRow[] rows = dt.Select("Column1 > 0");
foreach (DataRow row in rows)
{
Console.WriteLine(row["Column2"]);
}
```
6. 排序数据
```
DataView view = dt.DefaultView;
view.Sort = "Column1 DESC";
foreach (DataRowView row in view)
{
Console.WriteLine(row["Column2"]);
}
```
以上是一些基本的使用方法,DataTable还有很多其他的操作和属性,可以根据具体需求进行使用。
阅读全文