查询数据集以获取计数
本文关键字:获取 数据集 查询 | 更新日期: 2024-11-05 02:23:52
如何获取计数
var resHT = from row in ds.Tables[1].AsEnumerable()
where row.Field<int>("a") == Convert.ToInt32(a.Value) && row.Field<int>("b") == 1
select new {
TypeDescription = row.Field<string>("c"),
NameOrSpecs = row.Field<string>("d"),
AvailabilityBy = row.Field<DateTime?>("e")
};
我如何获取 resHT 的计数。我对 linq 有点陌生
var count = resHT.ToList().Count();
通过使用 new
命令执行Select
,可以有效地创建匿名类型的IQueryable
。 我不知道为什么代码在没有ToList()
的情况下出错的确切原因,但是添加ToList()
会将您的返回数据转换为匿名类型的List
。 List
类上有一个 count 属性,所以这就是为什么我让你做一个ToList
.
我确实知道,如果您执行 LINQ-to-SQL,ToList
会强制查询实际执行,然后拉取所有匹配的数据并创建匿名类型,然后可以对其进行计数。 如果您正在使用内存DataTable
,我不确定为什么它需要它才能工作。 我没有对 DataTable 做太多的 LINQ,所以我没有经常使用它。