zoukankan      html  css  js  c++  java
  • [Linq] LinqToObject

    Technorati 标签: Linq

    Linq 是C# 3.0 新增的好东西,用来处理对象集合,可用来查询数据库,XML文档

    主要分为    Linq To Objects (用来处理内存对象集合),也是本节的重点

                   Linq TO  SQL

                   Linq TO  XML

                   Lnq  To  Providers

           1.  基本语法

                var   n=

                            from   数据源

                            where  ..

                            select   n;

               最后 foreach( var  a  in   n)  循环结果集,例子将展示最基本的用法.

                

    例子

    声明字符串数组 strNames;  然后linq表达式  from 指定数据源,where 指明条件,select n 原则结果集

    最后通过 foreach 获取结果集,延迟执行!将名字中以“小”开头的名字打印出来。

    2. 用Linq方法语法和λ表达式(n=>xx)

                 1) λ表达式

             n=>n<100    就是匿名函数,n为参数,n<100是函数或者方法体。若n<100则返回Ture

                 2)Linq方法语法

                     同样例子查找以“小”开头的人名

                    var  queryResult=strNames.where(n=>n.startwith("小"));

    Where方法

                    方法:OrderBy

    OrderBy方法

    3. 合计运算符

    Count(),Min(),Max(),Average(),Sum()

            

    合计运算符
    查询复杂对象


     

      
    4. 投影:查询中创建对象

        select  n+1

        select  n.ToUpper()

        错误:select  n.name,n.city    只允许select one.所以当要查询多个数据时候应该创建对象

                                                             select   new {n.name,n.city}

               

    投射方法语法-在查询中创建对象

    5. 单值选项           select(n=>new {  xx}).Distinct();

    6. Any()和All()       查找数据源是否有,有就Ture,否则false

              例:查找 是否有 集合项C的country 是否为 “USA”

                 bool  anyUsa=Customers.Any(n=>n.country=="USA");

    7. 多级排序        OrderBy(x).ThenBy(x)

    多级排序

    8.  组合查询   

             from   c   in   xx

            group  c by c.Region  into cq

                        select   new {

                                           TotalPrice=cq.Sum(n=>c.sales),

                                            Region=cq.key

                                          }

    9. Take()  类似 MSSQL 的Top(),返回前n个结果

        Skip() 跳过前n个结果集

  • 相关阅读:
    MySQL备份与恢复-innobackupex
    MySQL备份与恢复-mysqldump备份与恢复
    font-size对展示的影响
    IE8及以下的数组处理与其它浏览器的不同
    正则表达式处理的基本步骤
    str += "a" + "b" & str = str + "a" + "b"的性能比较
    为非ajax请求绑定回调函数的方法
    ajax操作的链式写法
    各种控制元素显示和隐藏的方法优劣
    跟鸟哥学到的一招
  • 原文地址:https://www.cnblogs.com/StudyLife/p/2369621.html
Copyright © 2011-2022 走看看