C#基础:LINQ单值选择查询和多级排序

示例代码如下:

  1.  class Customer
  2.     {
  3.         public string ID { get; set; }
  4.         public string City { get; set; }
  5.         public string Country { get; set; }
  6.         public string Region { get; set; }
  7.         public decimal Sales { get; set; }
  8.         public override string ToString()
  9.         {
  10.             return "ID: " + ID + " City: " + City + " Country: " + Country + " Region: " + Region + " Sales: " + Sales;
  11.         }
  12.     }
  13.  
  14.  class Program
  15.     {
  16.         static void Main(string[] args)
  17.         {
  18.             List<Customer> customers = new List<Customer> {
  19.               new Customer { ID="A", City="New York", Country="USA", Region="North America", Sales=9999},
  20.               new Customer { ID="B", City="Mumbai", Country="India", Region="Asia", Sales=8888},
  21.               new Customer { ID="C", City="Karachi", Country="Pakistan", Region="Asia", Sales=7777},
  22.               new Customer { ID="D", City="Delhi", Country="India", Region="Asia", Sales=6666},
  23.               new Customer { ID="E", City="São Paulo", Country="Brazil", Region="South America", Sales=5555 },
  24.               new Customer { ID="F", City="Moscow", Country="Russia", Region="Europe", Sales=4444 },
  25.               new Customer { ID="G", City="Seoul", Country="Korea", Region="Asia", Sales=3333 },
  26.               new Customer { ID="H", City="Istanbul", Country="Turkey", Region="Asia", Sales=2222 },
  27.               new Customer { ID="I", City="Shanghai", Country="China", Region="Asia", Sales=1111 },
  28.               new Customer { ID="J", City="Lagos", Country="Nigeria", Region="Africa", Sales=1000 },
  29.               new Customer { ID="K", City="Mexico City", Country="Mexico", Region="North America", Sales=2000 },
  30.               new Customer { ID="L", City="Jakarta", Country="Indonesia", Region="Asia", Sales=3000 },
  31.               new Customer { ID="M", City="Tokyo", Country="Japan", Region="Asia", Sales=4000 },
  32.               new Customer { ID="N", City="Los Angeles", Country="USA", Region="North America", Sales=5000 },
  33.               new Customer { ID="O", City="Cairo", Country="Egypt", Region="Africa", Sales=6000 },
  34.               new Customer { ID="P", City="Tehran", Country="Iran", Region="Asia", Sales=7000 },
  35.               new Customer { ID="Q", City="London", Country="UK", Region="Europe", Sales=8000 },
  36.               new Customer { ID="R", City="Beijing", Country="China", Region="Asia", Sales=9000 },
  37.               new Customer { ID="S", City="Bogotá", Country="Colombia", Region="South America", Sales=1001 },
  38.               new Customer { ID="T", City="Lima", Country="Peru", Region="South America", Sales=2002 }
  39.            };
  40.             //单值选择查询查询Region
  41.             var queryResults = customers.Select(c => c.Region).Distinct();
  42.             //输出结果
  43.             foreach (var item in queryResults)
  44.             {
  45.                 WriteLine(item);
  46.             }
  47.             Write("Program finished, press Enter/Return to continue:");
  48.             ReadLine();
  49.           

           //多级查询同时查询 Region, Country, City

  1.               var queryResults =
  2.                     from c in customers
  3.                     orderby c.Region, c.Country descending, c.City           //descending关键字,反转排序
  4.                     select new { c.ID, c.Region, c.Country, c.City }
  5.                    ;
  6.                 foreach (var item in queryResults)
  7.                 {
  8.                     WriteLine(item);
  9.                 }
  10.                 Write("Program finished, press Enter/Return to continue:");
  11.                 ReadLine();        
  12.         }
  13.     }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值