zoukankan      html  css  js  c++  java
  • Linq操作DataTable

    参考:https://www.cnblogs.com/zhaotianff/p/9248157.html

    LINQ 查询适用于实现的数据源 IEnumerable<T>接口或System.Query.IQueryable接口。 

    DataTable类默认是没有实现以上接口的。

    所以要在DataTable中使用LINQ查询,需要调用一下AsEnumerable方法,返回一个EnumerableRowCollection<DataRow>集合。

    这样我们就可以在DataTable中使用LINQ查询了

    下列代码中 dt  是一个带有hashcode列的DataTable

    查询:从DataTable中查询Name=张三的所有记录的ID的值,并去重

      List<int> list1= (from a in dt.AsEnumerable() where a.Field<string>("Name")=="张三" select a.Field<int>("ID")).Distinct().ToList();

    排序:

    from a in dt.AsEnumerable().OrderBy(t=>t.Field<int>("ID"))

    查询并得到DataTable:引用System.Data.DataSetExtensions.dll,并调用DataTableExtensions. CopyToDataTableT>方法

      DataTable tempDataTable = dt.AsEnumerable().OrderByDescending(x => x.Field<int>("ID")).CopyToDataTable<DataRow>();

      

  • 相关阅读:
    01-HTML控件
    08-多线程
    07-Log日志
    06-File-文件
    05-函数式编程
    04-异常使用处理
    03-常用包模块
    02-包
    Java NIO(六) Selector
    Java NIO(四) Scatter/Gather
  • 原文地址:https://www.cnblogs.com/wangdongying/p/13410741.html
Copyright © 2011-2022 走看看