LINQ

LINQ,语言集成查询(Language INtegrated Query)是一种用来进行数据访问的编程模型,使得.NET语言可以直接支持数据查询。LINQ可以用相同的语法访问不同的数据源, 无论是访问文件、XML、数据库、注册表、事件日志、活动目录、还是第三方如Flickr的数据,都可以将数据作为对象使用,能够更好地与编程模式集成。LINQ的目的是降低访问数据的复杂度。

借助于LINQ技术,我们可以使用一种类似于SQL的语法来查询任何形式的数据。目前为止LINQ所支持的数据源有SQLServer、XML以及内存中的数据集合。开发人员也可以使用其提供的扩展框架添加更多的数据源,例如MYSQL、Amazon甚至是Google Desktop等。

LINQ包括5个部分:LINQ to Objects、LINQ to DataSets、LINQ to SQL、LINQ to Entities 和 LINQ to XML;

LINQ to XML 在System.Xml.LINQ命名空间下实现对XML的操作,采用高效、易用、内存中的XML工具在宿主编程语言中提供XPath/XQuery功能。

LINQ to SQL 全称是基于关系数据的.NET语言集成查询,用于以对象形式管理关系数据,并提供丰富的查询功能。

LINQ的语义:

  from 临时变量 in 集合对象或数据库对象
  where 条件表达式
  [orderby条件]
  [group by 条件]
  select 临时变量中被查询的值

LINQ的查询必须以select或者是group by 结束,其返回值的类型是临时变量的类型,可能是一个对象也可能是一个集合。并且LINQ的查询表达式是在最近一次创建对象时才被编译的。LINQ的查询一般跟var关键字一起联用

Linq是在.NET Framework 3.5 中出现的技术,所以在创建新项目的时候必须要选3.5或者更高版本,否则无法使用。 选择3.5或更高版本的.NET Framework之后,创建的新项目中会自动包含System.Linq的命名空间。

语法实例

  C#3.0 LINQ 查询语法
  一个很简单的LINQ查询例子,查询一个int 数组中小于5的数字,并按照大小顺序排列:
  class Program
  {
  static void Main(string[] args)
  {
  int[] arr = new int[] { 8, 5, 89, 3, 56, 4, 1, 58 };
  var m = from n in arr where n < 5 orderby n select n;
  foreach (var n in m)
  {
  Console.WriteLine(n);
  }
  Console.ReadLine();
  }
  }

你可能感兴趣的:(编程,xml,.net,sqlserver,语言,LINQ)