• Linq查询DataTable,DataRow


    static void Main() 

    {

    string strcon = global
    ::TestLinqToSQL.Properties.Settings.Default.testConnectionString; 

               SqlConnection conn
    = new
    SqlConnection(strcon); 

               SqlDataAdapter da
    = new SqlDataAdapter("select * from T_Teacher"
    , strcon); 

               DataTable dt
    = new
    DataTable(); 

               da.Fill(dt); 

               conn.Close(); 

     

               IEnumerable
    <DataRow> q1 = from r in
    dt.AsEnumerable() 

                                        
    where r.Field<int>("ID") % 2 == 0
     

                                         select r; 

              
    foreach (var item in
    q1) 

               { 

                   Console.WriteLine(
    "ID={0},Name={1},Birthday={2}", item["ID"].ToString(), item["Name"].ToString(), item["Birthday"
    ].ToString()); 

               } 

               Console.WriteLine(
    "-----------------------------------"
    ); 

               IEnumerable
    <DataRow> q2 = from r in
    dt.AsEnumerable() 

                                        
    where r.Field<int>("ID")>10
     

                                         select r; 

              
    foreach (var item in
    q2) 

               { 

                   Console.WriteLine(
    "ID={0},Name={1},Birthday={2}", item["ID"].ToString(), item["Name"].ToString(), item["Birthday"
    ].ToString()); 

               } 

               Console.WriteLine(
    "-----------------------------------"
    ); 

               DataTable dt1
    =
    q1.CopyToDataTable(); 

               DataTable dt2
    =
    q2.CopyToDataTable(); 

              
    //var except = dt2.AsEnumerable().Except(dt1.AsEnumerable() , DataRowComparer.Default); //
    集合排除 

              
    //var except = dt2.AsEnumerable().Union(dt1.AsEnumerable(), DataRowComparer.Default);   //集合并 


               var except
    = dt2.AsEnumerable().Intersect(dt1.AsEnumerable(), DataRowComparer.Default); //集合交 

              
    foreach (var item in except) 

               { 

                   Console.WriteLine(
    "ID={0},Name={1},Birthday={2}", item["ID"].ToString(), item["Name"].ToString(), item["Birthday"
    ].ToString()); 

               } 

               Console.WriteLine(
    "done"
    ); 

               Console.ReadLine(); 

  • 相关阅读:
    多线程编程
    Phthon环境搭建
    网站开发语言方案的选择
    NSTimer的一个误区
    一个tableview的自带动画
    一个扇形的动画效果
    一点两个uiview动画切换的体会
    关于gcd一些自己的理解。
    使用到定时器,单例和协议的一个小应用(2 )
    使用到定时器,单例和协议的一个小应用(1)
  • 原文地址:https://www.cnblogs.com/kingangWang/p/2158368.html
Copyright © 2020-2023  润新知