假设我的数据表已经被填充了数据。 在填充数据之后,我们能否再次使用 Linq 对数据表设置条件以提取数据?
假设我的数据表中有10个员工记录。
那么我们是否可以使用 Linq 查询仅提取薪资大于5000的员工记录。
我知道我们可以通过 DataTable.Select()
实现。那么如何用 Linq
来实现呢?
假设我的数据表已经被填充了数据。 在填充数据之后,我们能否再次使用 Linq 对数据表设置条件以提取数据?
假设我的数据表中有10个员工记录。
那么我们是否可以使用 Linq 查询仅提取薪资大于5000的员工记录。
我知道我们可以通过 DataTable.Select()
实现。那么如何用 Linq
来实现呢?
你可以获取一个经过筛选的行集合:
var query = table.AsEnumerable()
.Where(row => row.Field<decimal>("salary") > 5000m);
这里使用了 AsEnumerable
和 Field
扩展方法,它们分别属于 DataTableExtensions
和 DataRowExtensions
。
试试这个:
var query = (from t0 in dtDataTable.AsEnumerable()
where t0.Field<string>("FieldName") == Filter
select new
{
FieldName = t0.Field<string>("FieldName"),
FieldName2 = t0.Field<string>("FieldName2"),
});