LINQ——查询
来源:互联网 发布:淘宝代运营sina 编辑:程序博客网 时间:2024/05/22 12:05
什么是LINQ:LINQ,语言集成查询(Language Integrated Query)是一组用于C#和Visual Basic语言的扩展。它允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据(来自百度百科)。
简单点,LINQ是一种对数据进行操作的语言,类似对数据库的操作。(容易上手)
例子:
<span style="font-size:18px;"> //泛型集合数据persons List<string> persons = new List<string>(); persons.Add("zhang san"); persons.Add("wang wu"); persons.Add("li si"); persons.Add("Zhan san"); persons.Add("tan qi"); persons.Add("gao jiu"); persons.Add("mao er"); //输出persons中所有的元素 //var result = from p in persons select p; //输出persons 中姓zhang的人----语句和方法混合编排 //var result = (from p in persons select p).Where(p => p.StartsWith("zhang")); //排序 var result = from p in persons orderby p select p; </span>定义一个数组:
<span style="white-space:pre"></span> //定义一个int型数组
int [] arr={324,5,3,564,3423,65,2,78,86,4235,78,54,676,456};</span>聚合类:
<span style="white-space:pre"></span> Console.WriteLine("arr的最大值:" + arr.Max()); Console.WriteLine("arr的最小值:" + arr.Min()); Console.WriteLine("arr的平均值:" + arr.Average()); Console.WriteLine("arr的数组个数:" + arr.Count()); Console.WriteLine("arr的总和:" + arr.Sum());</span>排序类:
<span style="white-space:pre"></span> var result = arr.OrderBy(p => p.ToString().Substring(0, 1)); var result = arr.OrderBy(p => p.ToString().Substring(0, 1)).ThenBy(p => p);//2次排序 var t= arr.OrderBy(p => p.ToString().Substring(0, 1)); var result = from p in t orderby p descending select p;//降序。ascending 是升序</span>分区类:
<span style="white-space:pre"></span> var result = arr.Skip(3).Take(3);//跳过3个值,再取三个值 var result = arr.SkipWhile(p => p > 45);//数组中第一个数大于45跳过,取后面的数,如果小于,取所有的数</span>集合类:
<span style="white-space:pre"></span> var result = arr.Distinct();//唯一的值</span>生成类----静态类:
<span style="white-space:pre"></span> var result = System.Linq.Enumerable.Range('a', 30);//生成连续的序列 var result=System.Linq.Enumerable.Repeat ("aav",5); //重复5次</span>除了生成类是静态类,其他的聚合类,排序类,分区类和集合类都是扩展类。
总结:这个LINQ语言,需要写写代码更加容易加深印象,虽然你看也能看懂,但不保证你过几天就会忘记,所以,还是动动你的手指,找些例子做一做吧。
0 0
- LINQ——查询
- LinQ—高级查询方法
- Linq学习——查询表达式
- Linq——高级查询方法入门
- LINQ体验(17)——LINQ to SQL语句之动态查询
- LINQ体验(17)——LINQ to SQL语句之动态查询
- LINQ体验(17)——LINQ to SQL语句之动态查询
- LINQ体验(17)——LINQ to SQL语句之动态查询
- LINQ体验(17)——LINQ to SQL语句之动态查询
- LINQ体验(17)——LINQ to SQL语句之动态查询
- LINQ体验(17)——LINQ to SQL语句之动态查询
- LINQ体验(17)——LINQ to SQL语句之动态查询
- LINQ体验(17)——LINQ to SQL语句之动态查询
- LINQ——语言级集成查询入门指南
- Linq初探——DataTable的查询与修改
- 黑马程序员13——LINQ的常用查询符
- 【菜鸟看框架】——Linq实现动态模糊查询
- c#——表达式树在LINQ动态查询
- 内存分配空间中的堆区和栈区的区别
- DFS与BFS的总结
- Kafka集群partitions/replicas默认分配解析
- matlab提供的变换函数
- 【大话设计模式】--初涉设计模式
- LINQ——查询
- 8888
- java 抽象类 接口 Object类
- LeetCode OJ 之 Anagrams (回文构词法)
- 遇到一个ie下新窗口访问父级界面数组很慢的问题,甚是奇怪
- Linux之Makefile(basename)
- Android 安全学习
- Ubuntu14.04 配置nginx 与 php-fpm
- leetcode palindrome-partitioning