标签:匿名对象 HERE 数据库 order uid sql语法 username 结果 不同的
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
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子句:引入用于存储查询表达式中的子表达式结果的范围变量
var resUsers2 = userList.Where<UserInfo>(u => u.Age > 20).Select(u => new { u.UId,u.UserName,u.Age});
标签:匿名对象 HERE 数据库 order uid sql语法 username 结果 不同的
原文地址:https://www.cnblogs.com/herojy886/p/13335198.html