《LINQ常用操作.doc》由会员分享,可在线阅读,更多相关《LINQ常用操作.doc(5页珍藏版)》请在金锄头文库上搜索。
1、LINQ常用操作 包括查询语法 与Lambda 表达式语法方式,只是在表现风格上有所不同 先定义一个类,便于使用public class Student public string id get;set; public double english get;set; public double computer get;set; public double math get;set; public double total get return english+computer+math; public double average get return total / 3; 实例化之 /这对
2、象的来源就多了,xml,webservice,数据库,业务逻辑,系统内存var list = new List(); Random r = new Random(); for (int i = 0; i (puter + g.english + g.math) / 3 =60); /foreach (Student s in list) / / Console.WriteLine(puter); /4.2选择 /var result = from ss in list / select new ss.id, ss.total, ss.average ; /匿名类型 /var result =
3、list.Select( ss = new ss.id, ss.total, ss.average );/和上面等价 /遍历 / list.ForEach(s = Console.WriteLine(total:0, s.math + puter + s.english); ); / list.ForEach(s = Console.WriteLine( s.math + puter + s.english); );4.3排序 /查询方式 var result = from ss in list orderby ss.average descending select ss; /表达式方式 v
4、ar result = list.OrderByDescending(ss = ss.average); /查询平均成绩60的学生ID /* var result = from ss in list where ss.average 60 select ss; */ /var result = list.Where(ss = ss.average = 70); /* foreach (var s in result) Console.WriteLine(id:0,ave1, s.id, s.average); 4.4数据分页 (这个太好了,在我还是初级程序员的时候,公司有个伪高人就是封装了分页存储过程的Web控件,然后如鱼得水了好一阵。做事情最好还是踏实点,觉得自己差不多了的时候,脑子里装不进新东西!) Skip Take两个方法 for (int i = 0; i s.math90); if (result != null) Console.WriteLine(id:0math:1,result.id,result.math.ToString(00.0); Console.ReadLine(); /知道 select top1 form user;吗? /那MSSql select DISTINCT name, * from user;呢?