Linq学习(1) 概述

本篇简单回顾C#语言集合操作的变化,通过与Linq对等的面向对象的语法来认识Linq。

Linq是Language Integrated Query, 初识Linq感觉跟SQL Server的Tsql很像,可以进行语言必备的逻辑操作,也可以实现对集合的直接查询。

Net1.X时代

C#不支持泛型,集合用元素只能为object类型的ArrayList等。

添加、取出元素都与Object类型进行强制类型转换,

如果是值类型要进行装箱操作,取出元素时进行拆箱操作,影响效率,

编译时不进行类型检查,类型不匹配运行时可能出错。

定义实体类:

public class Employee
{
  private string _Name;
  private int _Age;
  private string _Phone;
  public string Name
  {
    get { return _Name; }
    set { _Name = value; }
  }
  public int Age
  {
    get { return _Age; }
    set { _Age = value; }
  }
  public string Phone
  {
    get { return _Phone; }
    set { _Phone = value; }
  }
  public Employee(string name, int age, string phone)
  {
    _Name = name;
    _Age = age;
    _Phone = phone;
  }
}

时间: 2024-11-02 09:00:25

Linq学习(1) 概述的相关文章

linq学习专题

LINQ to SQL语句Union/Intersect/Except介绍 LINQ TO XML之判断不存在行则插入 LINQ to SQL语句(25)之继承 LINQ to SQL语句(24)之视图 LINQ to SQL语句(23)之动态查询 LINQ to SQL语句(22)之DataContext LINQ to SQL语句(21)之用户定义函数 LINQ to SQL语句(20)之存储过程 LINQ to SQL语句(19)之ADO.NET与LINQ to SQL LINQ to S

Linq学习(6) Group & Join

本篇介绍Linq的Group和Join操作,继续使用<Linq 学习(3) 语法结构>中介绍的数据源. Group Group是进行分组操作,同SQL中的Group By类似. 原型如下: public static IEnumerable<IGrouping<TKey, TSource>> GroupBy<TSource, TKey>( this IEnumerable<TSource> source, Func<TSource, TKe

Linq学习(5) 集合操作

本篇介绍Linq的集合操作,继续使用<Linq 学习(3) 语法结构>中介绍的数据源. Count/LongCount Count/LongCount 返回结果集中元素的数量,返回类型分别为int/long. 原型为: public static int Count<TSource>(this IEnumerable<TSource> source[, Func<TSource, bool> predicate]) 姓名长度大于四个字符的学生的数量: var

Linq学习笔记

写在前面 其实在09年就已经学习过Linq了,并被她那优美的语法所吸引,只是现在所在的公司还在使用VS2005在.Net2.0的框架下面的开发,所以Linq也很久没有用过了,最近看部门的同事对这个有些兴趣,所以打算整理点东西出来跟大家一起做个分享. 什么是Linq LINQ是Language Integrated Query的简称,它是集成在.NET编程语言中的一种特性.已成为编程语言的一个组成部分,在编写程序时可以得到很好的编译时语法检查,丰富的元数据,智能感知.静态类型等强类型语言的好处.并

一起谈.NET技术,Linq学习笔记

写在前面 其实在09年就已经学习过Linq了,并被她那优美的语法所吸引,只是现在所在的公司还在使用VS2005在.Net2.0的框架下面的开发,所以Linq也很久没有用过了,最近看部门的同事对这个有些兴趣,所以打算整理点东西出来跟大家一起做个分享. 什么是Linq LINQ是Language Integrated Query的简称,它是集成在.NET编程语言中的一种特性.已成为编程语言的一个组成部分,在编写程序时可以得到很好的编译时语法检查,丰富的元数据,智能感知.静态类型等强类型语言的好处.并

Linq To Xml学习 - 1.LINQ to XML 概述

LINQ to XML 是一种启用了 LINQ 的内存 XML 编程接口,使用它,可以在 .NET Framework 编程语言中处理 XML. 它将 XML 文档置于内存中,这一点很像文档对象模型 (DOM). 您可以查询 和修改 XML 文档,修改之后,可以将其另存为文件,也可以将其序列化然后通 过网络发送. 但是,LINQ to XML 与 DOM 不同: 它提供一种新的对象模型, 这是一种更轻量的模型,使用也更方便,这种模型利用了 Visual C# 2008 在语 言方面的改进. LI

Linq学习(7) 延迟执行 &amp;amp; 查询非泛型集合

本篇介绍Linq的延迟执行和查询非泛型集合. 延迟执行 从Linq的查询过程看,不断有新类型.集合的构建.释放,感觉效率不高,但Linq的延迟执行机制将大大改善常规操作加载整个数据源导致的效率低下的状况. 示例: static void Main() { int[] collection = { 10, 11, 12, 13, 14 }; Console.WriteLine("Begin query collection:" + DateTime.Now); var result =

Linq学习(4) 投影、筛选和排序

这里简单介绍Linq的投影.筛选和排序子句. Select select 在一个集合序列按给定的条件进行投影,select 可以返回组合的筛选结果,返回匿名类型,对返回结果进行操作,返回组合的子查询结果等等. select 的方法定义原形为: public static IEnumerable<TResult> Select<TSource, TResult>(this IEnumerable<TSource> source, Func<TSource, TRes

Linq学习(3) 语法结构

Linq 语法结构 (来自Linq in action) 举个例子实现: 查询以a开头的字符串,按降序输出. C#代码: string[] list = { "adobe", "excel", "acer", "query", "async", "xianfen", "apple", "amazon", "player", &q