LINQ 学习笔记(04)
来源:互联网 发布:广发华福软件 编辑:程序博客网 时间:2024/04/30 13:20
orderedby 用来对select的结果排序。
concat用来连接两个集合
class CalendarEvent { public string Title { get; set; } public DateTimeOffset StartTime { get; set; } public TimeSpan Duration { get; set; } } class Program { static void Main(string[] args) { List<CalendarEvent> events = new List<CalendarEvent> { new CalendarEvent { Title = "Swing Dancing at the South Bank", StartTime = new DateTimeOffset(2009,7,11,15,0,0, TimeSpan.Zero), Duration = TimeSpan.FromHours(4) }, new CalendarEvent { Title = "Saturday Night Swing", StartTime = new DateTimeOffset(2009, 7, 11, 19, 30, 0, TimeSpan.Zero), Duration = TimeSpan.FromHours(6.5), }, new CalendarEvent { Title = "Formula 1 German Grand Prix", StartTime = new DateTimeOffset(2009,7,12,12,19,0, TimeSpan.Zero), Duration = TimeSpan.FromHours(3) }, new CalendarEvent { Title = "Swing Dance Picnic", StartTime = new DateTimeOffset(2009,7,12,15,0,0,TimeSpan.Zero), Duration = TimeSpan.FromHours(4) }, new CalendarEvent { Title = "Stompin' at the 100 Club", StartTime = new DateTimeOffset(2009,7,13,19,45,0,TimeSpan.Zero), Duration = TimeSpan.FromHours(5) } }; var eventsBystartTime = from ev in events orderby ev.StartTime // default ascending select ev; foreach (CalendarEvent ev in eventsBystartTime) { Console.WriteLine("-------------------------------"); Console.WriteLine(ev.Title); Console.WriteLine(ev.StartTime); Console.WriteLine(ev.Duration); } var eventsBystartTimeD = from ev in events orderby ev.StartTime descending select ev; foreach (CalendarEvent ev in eventsBystartTimeD) { Console.WriteLine("-------------------------------"); Console.WriteLine(ev.Title); Console.WriteLine(ev.StartTime); Console.WriteLine(ev.Duration); } var eventsByStartTimeNoDate = from ev in events orderby ev.StartTime.TimeOfDay select ev; foreach (CalendarEvent ev in eventsByStartTimeNoDate) { Console.WriteLine("-------------------------------"); Console.WriteLine(ev.Title); Console.WriteLine(ev.StartTime); Console.WriteLine(ev.Duration); } var eventsByTwoConditions = from ev in events orderby ev.StartTime.Date, ev.Duration select ev; //var eventsByTwoConditions = events.OrderBy(ev => ev.StartTime).ThenBy(ev => ev.Duration); foreach (CalendarEvent ev in eventsByTwoConditions) { Console.WriteLine("-------------------------------"); Console.WriteLine(ev.Title); Console.WriteLine(ev.StartTime); Console.WriteLine(ev.Duration); } var allEvents = eventsBystartTime.Concat(eventsBystartTimeD); foreach (CalendarEvent ev in allEvents) { Console.WriteLine("-------------------------------"); Console.WriteLine(ev.Title); Console.WriteLine(ev.StartTime); Console.WriteLine(ev.Duration); } } }
- LINQ 学习笔记(04)
- linq学习笔记(一)
- linq学习笔记(二)
- Linq学习笔记(三)
- linq学习笔记(一)
- LINQ 学习笔记-1
- LINQ 学习笔记-2
- LINQ 学习笔记-3
- LINQ学习笔记0529
- Linq学习笔记
- linq 查询学习笔记
- LINQ 学习笔记(01)
- LINQ 学习笔记(02)
- LINQ 学习笔记(03)
- LINQ 学习笔记(05)
- linq学习笔记
- linq学习笔记1
- Linq学习笔记
- jsp tag file中使用c:when 标签无法正确判断的问题
- 终于发布成功了,截图表示庆祝
- PHP运行出现Notice : Use of undefined constant 的完美解决方案
- 06、C获取当前系统日期时间
- jboss remote debug 设置
- LINQ 学习笔记(04)
- 解决IE不能打开新的窗口
- 堆栈溢出的预防方法
- 写代码如坐禅:你是哪一类程序员
- Java程序员面试题及解答
- RFC1867协议客户端实现
- HttpClient 教程 (三)
- HttpClient 教程 (四)
- HttpClient 教程 (五)