zoukankan      html  css  js  c++  java
  • LINQ查询表达式---------into

    LINQ查询表达式---------into

    into 上下文关键字创建一个临时标识符,以便将 group、join 或 select 子句的结果存储到新的标识符

    class Program
    {
        public class PerInfo
        {
            public int Id
            {
                get;
                set;
            }
            public string Name
            {
                get;
                set;
            }
            public int Age
            {
                get;
                set;
            }
        }
    
        static void Main(string[] args)
        {
            //into 上下文关键字创建一个临时标识符,以便将 group、join 或 select 子句的结果存储到新的标识符
            List<PerInfo> perInfos = new List<PerInfo>
            {
                new PerInfo{Id = 1, Name = "小日", Age = 15},
                new PerInfo{Id = 2, Name = "小日", Age = 17},
                new PerInfo{Id = 3, Name = "张三", Age = 21},
                new PerInfo{Id = 4, Name = "李四", Age = 23}
            };
    
            //into用于select
            var query1 = from q in perInfos
                         where q.Id > 1
                         select new
            {
                NewName = q.Name, NewAge = q.Age
            }
            into NewPerInfo
            orderby NewPerInfo.NewAge descending
            select NewPerInfo;
            Console.WriteLine("into 用于 select");
            foreach (var item in query1)
            {
                Console.WriteLine("    {0}   {1}", item.NewName, item.NewAge);
            }
    
    
            //into 用于group
            var query2 = from p in perInfos
                         group p by p.Name[0] into g//使用 into 关键字来启用临时标识符 g,该标识符具有推断类型 IGroupi
                         select g;
            Console.WriteLine("into 用于group");
            foreach (var key in query2)
            {
                Console.WriteLine("  分组键:{0}", key.Key);
                foreach (var item in key)
                {
                    Console.WriteLine("    {0}  {1}", item.Name, item.Age);
                }
            }
    
            Console.ReadLine();
        }
    }
    输出结果:
    into 用于 select
        李四   23
        张三   21
        小日   17
    into 用于group
      分组键:小
        小日  15
        小日  17
      分组键:张
        张三  21
      分组键:李
        李四  23
    

      

  • 相关阅读:
    滚动播放文字或者图片信息效果
    电话号码
    星星
    圆角android
    JavaSE 基于AWT的记事本实现
    JavaSE 匿名类(Anonymouse Inner Class)实现
    老子《道德经》第四十四章
    linux 源码安装最新git
    sama5d3 xplained 编译文件系统(buildroot)添加nfs支持
    sama5d3 xplained 挂载主机NFS共享目录
  • 原文地址:https://www.cnblogs.com/haibing0107/p/6497770.html
Copyright © 2011-2022 走看看