Linq入门——什么是linq & 扩展方法
2014-11-21 21:53
253 查看
一,什么是Linq
linq(language integrated Query):语言集成查询;
linq包含如下:
对对象的查询,对数据库的查询,对XML的查询。
那么,没有linq前我们是怎样查询的?
先看一个例子:
现在我们要查询大于50的数,:
在没有linq之前,我们的代码时这样的:
使用了linq查询:
首先,从直观上看,代码更加简洁,其次,对于查询部分,接近SQL语句,层次清晰,容易理解;
除了简单高效以为,LINQ的出现解决了很多问题:
1,面向对象与数据访问两个领域长期分裂,各自为政的问题:比如,在面向对象中,对于对象中数据的访问,我们用“对象名称.属性名”就可以,但是在数据访问领域,我们要从数据库中查询数据的时候,用的确实SQL语句,比如select * from table.
2,编程语言中的数据类型与数据库中的数据类型形成两套体系;
例如,编程语言中字符串string, 但是数据库中可以用很多类型代表字符,如:char,nvchar,vchar
3,SQL编码体验落后
SQL语句只有运行时才会发现错误,不能在写代码的时候发现语法错误,我们要调试SQL语句,只能放到查询分析器里面进行单独调试;
4,SQL和XML都有各自的查询语言,而对象没有自己的查询语言
对于数组和结合的查询只能遍历进行,不像SQL和XML那么简单;
二,扩展方法
首先,扩展方法是对现有的类提供额外的方法,来扩展类的功能;其次,Linq基于扩展方法;
示例:
需要注意的是,扩展方法中this后面指定了此方法针对的类型。
后续将涉及到linq深入探索,本人初学者,请多多关照。
相关文章推荐
- Linq入门——什么是linq & 扩展方法
- Linq快速入门——扩展方法
- EF下lambda与linq查询&&扩展方法
- Linq快速入门——扩展方法
- 委托是什么?匿名方法是什么?在C# 3.0中,Lambda表达式是什么?扩展方法是什么?LINQ是什么?您觉得C# 3.0中还有哪些重要的特性,它们带来了什么优势?BCL中哪些类库和这些特性有关?您平时最常用哪些
- Linq快速入门——扩展方法
- Linq快速入门——扩展方法
- Linq快速入门——扩展方法
- LINQ 简介 什么是LINQ 一览入门贴
- js入门·对象属性方法大总结
- 【收藏】本周ASP.NET英文技术文章推荐[09/23 - 09/29]:IIS 7.0、Facebook.NET、ASP.NET AJAX、ModalPopupExtender、扩展方法、LinqDataSource、ListView、Visual Studio
- 为LINQ服务的C#新特性总结篇---扩展方法,匿名委托,lambda表达式,Action委托,Func委托,Linq中的order by,top和sum函数
- a herf = "这里要填什么" onclick = "方法">
- linq to sql 扩展方法
- C#==>扩展方法
- "=="和equals方法究竟有什么区别
- 用prototype和用"."扩展方法的区别
- Response.Redirect在新窗口打开 && 3.0扩展方法
- 出现"无法载入mysql 扩展,请检查PHP 配置"的解决方法
- 综合应用WPF/WCF/WF/LINQ之二十:ListView控件中几个常用的扩展方法