c# datatable linq 查询
时间: 2023-11-22 18:38:10 浏览: 179
C# Linq查询
在C#中,可以使用LINQ查询来对DataTable进行查询操作。首先需要调用DataTable的AsEnumerable方法,将其转化为一个EnumerableRowCollection<DataRow>集合,然后可以使用LINQ查询来筛选和投影数据。
下面是一些常见的DataTable LINQ查询操作示例:
1. 单个条件查询:
```csharp
var rows = products.AsEnumerable()
.Where(p => p.Field<decimal>("UnitPrice") > 10m)
.Select(p => new
{
ProductID = p.Field<int>("ProductID"),
ProductName = p.Field<string>("ProductName"),
UnitPrice = p.Field<decimal>("UnitPrice")
});
```
2. 多个条件查询:
```csharp
var query = from p in ds.Tables["Product"].AsEnumerable()
from c in ds.Tables["Category"].AsEnumerable()
where p.Field<int>("CategoryID") == c.Field<int>("CategoryID")
&& p.Field<decimal>("UnitPrice") > 10m
select new
{
ProductID = p.Field<int>("ProductID"),
ProductName = p.Field<string>("ProductName"),
CategoryName = c.Field<string>("CategoryName")
};
```
请注意,以上示例中的"products"和"ds"是DataTable对象,根据实际情况替换为你自己的DataTable对象。
阅读全文