• 第二节: 比较EF的Lambda查询和Linq查询写法的区别


     简介

       在前面EF的介绍中,曾多次提到过EF可以使用Lambda和Linq来完成对数据库的访问,这两种的语法的具体使用和注意事项在前面的DotNet进阶的系列章节中已经详细介绍过了,本次借着EF章节,重新调整了一下里面的规范和注意事项。

    1. Lambda语法

     七类核心用法:

     0. Select最基本的用法:查询单表中所有数据

     1. Where的用法:单条件、多条件、模糊查询

     2. select查询指定列:匿名类写法(指定匿名类的名称或使用默认表的名称)

     3. 排序问题:

       ① 单条件单次升序:OrderBy;

       ② 单条件单次降序:OrderByDescending;

       ③ 多次升序:OrderBy→ThenBy→ThenBy;

       ④ 多次降序:OrderByDescending→ThenByDescending→ThenByDescending;

       ⑤ 先升序再降序再升序:OrderBy→ThenByDescending→OrderBy;

     4. Join内连接关联查询:先关联、然后写条件(Where、OrderBy),同样道理可以写匿名类(指定列名或不指定列名);单独写一个实体接收

     5. GroupBy单表分组:分组后会将数据分成一些key-value的信息块,key是分类字段,value对应的就是该分类字段的数据集合

     6. GroupJoin外连接查询:(相当于left Join),用法需要显示声明Lambda表达式,而且连接的表需要全部输出(写法要特别注意)

     7. Skip和Take用法:跨过多少条,取多少条、分页公式(一定是先Skip和Take,然后再ToList)

      详细内容:请点击。

    2. Linq语法

     六类核心用法

     Linq用法:from....where....select... 为基本框架,缺一不可

     1. where:单条件、多条件、模糊查询

     2. select:同样可以是匿名类(指定名称和不指定名称)和非匿名类的写法

     3. 排序问题:orderby x1 ascending,x2 descending,x3

     4. 关联查询:内连接(隐式内连接和隐式外连接) 和 外链接(左外链接)

     5. group by分组

     6. skip和take分页

       详细内容:请点击。

  • 相关阅读:
    WebBrowser一点心得,如果在Javascript和Winform代码之间实现双向通信
    PHP
    ASP.NET的路由系统:根据路由规则生成URL
    数据库的范式模型
    P2P编程
    MS CRM 2011的自定义与开发(12)——表单脚本扩展开发(4)
    Html.RenderPartial和Html.Partial在Razor视图中的区别
    如何在本地安装 DotNetNuke 6
    ASP.NET的路由系统:路由映射
    ASP.NET Web API: 宿主(Hosting)
  • 原文地址:https://www.cnblogs.com/yaopengfei/p/7678755.html
Copyright © 2020-2023  润新知