• LINQ基础资料


    前言

    LINQ(Language Integrated Query )语言集成查询,是一组用于C#和VB语言的拓展,在.net中它允许VB或者C#代码以操作内存数据的方式,查询数据库。

    LINQ的三个主要组成部分是:

    标准查询运算符:这些是形成LINQ模式的扩展方法。 它在序列上运行并形成一个API,可以查询任何.NET数组。 LINQ中的标准查询运算符允许您执行诸如确定序列中是否存在值,序列求和等函数.API支持的查询运算符为:

    语言扩展:当LINQ主要作为.NET框架库实现时,LINQ定义了可选的语言扩展。 这使查询成为第一类语言构造,并提供编写查询的语法。

    LINQ提供程序:这些类是一组类,它们生成一个对特定数据源执行相同查询的方法。 不同的提供程序定义了LINQ的不同风格:LINQ to SQL、LINQ to XML、LINQ to Objects

    LINQ语法:

    第一种写法:类似SQL语法,查询语句

    var resUsers = from u in userList
    where u.Age > 20
    select new {u.UId,u.UserName,u.Age};

    要点解析:必须以from开头。以select或者group by结尾。from a ,其中a其中元素, in 数据源。中间以各种条件连接,比如where 、order by结尾select 查出这个筛选之后的a。当然也可以使用匿名对象或者新的已构造的对象

    常见子句有:

    from子句:指定查询操作的数据源和范围变量

    where子句:筛选元素的逻辑条件,返回值是一个bool类型

    select子句:指定查询结果的类型和表现形式

    orderby子句:对查询结果进行排序(升序或者降序)

    group子句:对查询结果进行分组

    into子句:提供一个临时标识符,该表示可充当对join/group/select子句结果的引用

    join子句:连接多个查询操作的数据源

    let子句:引入用于存储查询表达式中的子表达式结果的范围变量

    第二种写法:lambda表达式(简洁且功能更多,推荐)

    var resUsers2 = userList.Where<UserInfo>(u => u.Age > 20).Select(u => new { u.UId,u.UserName,u.Age});

  • 相关阅读:
    Centos7:Redis3.0集群搭建
    Centos7:Redis的安装,配置及使用
    nginx 配置反向代理和负载均衡
    Centos7:nginx的安装,配置及使用
    Centos7:dubbo监控中心安装,配置和使用
    Centos7:配置防火墙
    MarkDown常用语法
    关于获取本地系统时间是正确的,但插入数据库是错的,相差8小时
    Uncaught TypeError: Cannot read property 'getters' of undefined
    java mysql连接时出现的问题
  • 原文地址:https://www.cnblogs.com/herojy886/p/13335198.html
Copyright © 2020-2023  润新知