石家庄网站建设平台,wordpress网站开发,外贸网站商城建设,wordpress 5.0.1文章目录 1.LINQ概述1.1 LINQ介绍1.2 LINQ基本使用1.3 LINQ的扩展 2. 标准查询操作符2.1 筛选(索引、类型筛选....)2.2 索引筛选2.3 3. xxxxxxx 1.LINQ概述
1.1 LINQ介绍 LINQ是语言集查询(Language Integrated Query, LINQ)的查询语言#xff0c;其集成了c#当中的查询语法其集成了c#当中的查询语法可以通过相同的语法访问不同的数据源. 我们来看一个一个简单的LINQ查询的语法LINQ查询语法和我们熟悉SQL查询语句非常相似从哪个数据源查询from查询条件where以及中间的数据处理orderby操作最后使用select查询即可.
var query from x in studentswhere x.age 2orderby x.age descendingselect x;
foreach(var x in query) {Console.WriteLine(x.age x.name);
}LINQ细节注意 LINQ是一个查询语句其必须以from子句开头以select 或 group 子句结束. 在这两个子句之间可以使用where、orderyby、join、let、其他from子句.LINQ当中的子句from、where、select等都是查询中预定义的关键字。LINQ查询的执行不是在定义的时候执行而是在foreach循环访问查询的时候执行查询操作. 1.2 LINQ基本使用
using System.Collections;
class students {public int age { get; set; }public string name { get; set; }public students(int v1, string v2) {this.age v1;this.name v2;}
}class Test {static void Main() {Liststudents students new Liststudents(); // 定义数据源students.Add(new students(3, 张三));students.Add(new students(1, 李一));students.Add(new students(2, 王二));var query from x in students // 定义LINQ查询where x.age 2orderby x.age descendingselect x;foreach(var x in query) { // 使用foreach语句执行该查询Console.WriteLine(x.age x.name);}}
}/*
3 张三
2 王二
*/1.3 LINQ的扩展
在这里插入代码片2. 标准查询操作符
2.1 筛选(索引、类型筛选…) 筛选的通用代码(案例只写LINQ查询的关键代码)
using System.Collections;
class students {public int age {get; set;}public string name {get; set;}public students(int v1, string v2){this.age v1;this.name v2;}
}class Test{static void Main(){Liststudents students new Liststudents();students.Add(new students(1, A1));students.Add(new students(2, B2));students.Add(new students(3, C3));students.Add(new students(4, A4));students.Add(new students(5, B5));students.Add(new students(6, C6));var query from r in studentswhere r.age 2 r.age 5select r;foreach(var x in query) {Console.WriteLine(x.name x.age);}}
}筛选
// 简单查询
var query from r in studentswhere r.age 2 r.age 5select r;// 使用了where() 与 select()扩展
var query students.Where(r r.age 2 r.age 5).Select(r r);索引筛选
// 利用where方法的重载实现
var query students.Where((r, index) index % 2 0). // 索引默认从0开始排序Select(r r);类型筛选
// 使用OfType()扩展方法将string类型参数传递给泛型参数
object[] data { one, 2, three, 4, five, 6 };
var query data.OfTypestring();
foreach(var item in query) {Console.WriteLine(item);
}2.2 索引筛选
2.3
3. xxxxxxx