Linq入门——什么是linq & 扩展方法-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

Linq入门——什么是linq & 扩展方法

简介:  一,什么是Linq                      linq(language integrated Query):语言集成查询;      linq包含如下:                 对对象的查询,对数据库的查询,对XML的查询。


 一,什么是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深入探索,本人初学者,请多多关照。害羞

  


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章
最新文章
相关文章