概述
前面的博客中写到过关于Linq的一些知识,但是,没有详细的说Linq,本篇博客将会说一下Linq。
什么是Linq
Linq是一个概念,它实现了数据查询使用同一方式,即,它使我们程序员通过使用它,来实现用同一方式操作不同的数据源(数据库,集合,XML文件)。
Linq的分类
从使用的角度出发,Linq包括:Linq to Objects(对象的查询)、Linq to XML(XML的查询)和Linq to ADO.net(数据库的查询),而Linq to ADO.net中又分为Linq to SQL、Linq to DataSet和Linq to Entities,对于Linq to SQL这块内容,就是我们经常说的ORMapping思想的具体实现。ORMapping思想就是使我们程序完全实现面向对象,使我们的不用关系数据库,只需要关注业务逻辑就行。
Linq的查询方式
Linq的查询方式有两种:查询方法和查询语句。
查询方法就是在原有类上的扩展方法,当然,这些方法的参数可以是委托,即我们使用的Lambda表达式,这种方式写出来的代码不容易理解,但是,功能确实非常的强大。
查询语句就是我们使用的类似于SQL语句的语句,这种方式写出来的代码容易理解,但是,功能不是很强大。
很多情况下,我们都是将这两种方式结合的使用。
Linq to SQL的使用
Linq to SQL是Linq中非常重要的实现,而Linq to SQL中的一个核心类就是DataContext,我们不管使用手动自己创建还是通过工具创建Linq to SQL,其实都是在DataContext类的基础上进行的。
手动创建时,需要我们创建带有特性的实体类 ,而通过工具创建的,我们不需要通过自己编写手动的编写相应的实体类,工具会自动给我们生成。
总结
Linq的一个重要功能就是ORMapping思想的具体实现,ORMapping的思想就是实现编程的真正面向对象,使我们不用关心数据库,只需要关系实体类或实体集合类就行。