C#学习笔记之初识LINQ查询

来源:互联网 发布:python虚拟主机 编辑:程序博客网 时间:2024/05/17 04:17

今天下午学习了JAVA里面没有的一个技术点—记点笔记以备日后查用。

JAVA里面没有,说明即使没有LINQ,我们照样可以我们想要的功能,那么LINQ 的意义在哪呢,两个字——“简单”。

那么什么是LINQ呢,LINQ是Language Intergated Query 的缩写,即集成查询语言,既然是查询语言,那么就是为查询准备的。首先我们看一个查询集合的例子,首先定义一个实体类Person。

 public class Person
    {
        public Person() { }
        public Person(string name, int age)
        {
            this.Age = age;
            this.Name = name;
        }
        public string Name {get;set;}
        public int Age { get; set; }


        public override string ToString()
        {
            return "姓名:"+Name+",年龄:"+Age.ToString();
        }
    }

增加一个存储Person类的集合,并存储部分实体。

 List<Person> perList = new List<Person>();
            perList.Add(new Person("张三",20));
            perList.Add(new Person("李四", 30));
            perList.Add(new Person("王五", 64));
            perList.Add(new Person("赵六", 99));
            perList.Add(new Person("王重阳", 102));
            perList.Add(new Person("张三疯", 120));
            perList.Add(new Person("小倩", 2));

下面就是关键的运用查询语句了,假设我们要查询Age大于50的Person。

 var linqQuery = from per in perList where per.Age>50 select per;
            foreach (var per in linqQuery)
            {
                Console.Write(per + "\r\n");
            }

感觉是不是很简单?下面再具体分析一下LINQ.

 var linqQuery = from per in perList where per.Age>50 select per;

上面这条语句是LINQ查询语句的赋值语句,这个语句只是赋值语句,不执行查询,下面的foreach才是查询语句。

LINQ语句已from开通,以select 或group结尾,可以使用where 添加查询条件。

0 0
原创粉丝点击