C#对DataTable做LINQ查询

我们是不能直接对DataTable做LINQ查询,DataRowCollection是没有实现IEnumerable<T>。有一些方法可以间接实现对DataTable执行LINQ查询。

AsEnumerable()

使用DataTable的扩展AsEnumerable(),把DataTable转换为IEnumerable<DataRow>。

var results = from myRow in myDataTable.AsEnumerable()
where myRow.Field<int>("RowNo") == 1
select myRow;

DataTable.Rows 

调用DataTable的Rows,把row转换为DataRow。

var results = from DataRow myRow in myDataTable.Rows
    where (int)myRow["RowNo"] == 1
    select myRow

版权声明:著作权归作者所有。

相关推荐

C#给文档注释添加换行

错误用法:使用<br />/// 第一行 /// <br /> /// 第二行 显示出来没有效果。正确做法:使用<para>/// <summary> /// <para>第一行</para> /// <para>第二行</par

C#计算用户年龄

此方法仅用于简单计算年龄,不适用于计算虚岁public static int GetAge(DateTime birthDate) {     DateTime now = DateTime.Now;      int age&n

Python:查询列表给定元素的索引

单一索引列表的index()函数返回列表里第一次遇到给定元素的索引。>>> ["a", "b", "c"].index("b") 1 多个索引如果需要返回给定元素的所有索引,则要遍历列表:indexes = [index for i

Nginx gzip对javascript文件压缩无效

问题Nginx从1.0.15升级到1.12.1后,原来开启的gzip对javascript文件压缩失效了。原来nginx的gzip相关配置如下gzip on; gzip_min_length 1k; gzip_buffers 4 16k; gzip_comp_level 2; gzip_types text/plain applicati