我对linq的初步认识

 

LINQ,语言级集成查询( Language INtegrated Query)

经过了最近 20 年,面向对象编程技术( object-oriented (OO) programming technologies )在工业领域的应用已经进入了一个稳定的发展阶段。程序员现在都已经认同像 类(classes)、对象(objects)、方法(methods)这样的语言特性。考察现在和下一代的技术,一个新的编程技术的重大挑战开始呈现出来,即面向对象技术诞生以来并没有解决降低访问和整合信息数据( accessing and integrating information )的复杂度的问题。其中两个最主要访问的数据源与数据库( database )和 XML 相关。


  LINQ 提供了一条更常规的途径即给 .Net Framework 添加一些可以应用于所有信息源( all sources of information )的具有多种用途( general-purpose )的语法查询特性( query facilities ),这是比向开发语言和运行时( runtime )添加一些关系数据( relational )特性或者类似 XML 特性( XML-specific )更好的方式。这些语法特性就叫做 .NET Language Integrated Query (LINQ) 。

包含 DLinq 和 XLinq
不经意间在网上看到这样的代码:

var query = from item in languages
                orderby item
                group item by item.Length into lengthGroups
                orderby lengthGroups.Key descending
                select lengthGroups


开始还以为为是写的sql语句,后来再次遇到才知是c#3.0中的新特性。下面简单介绍一下新种新的类似与sql语句的语法
1 什么是linq
liq 是Language Integrated Query 的缩写
回忆我们经常写过的sql语句 "select  top 10* from news  order by id asc " 之类的语句。linq 的出现 完全可以将我们熟悉的SQL中像"select","from","where"等语句, LINQ查询语法跟SQL查询语法很相识,除了先后顺序.可以在.NET Framework环境中顺利使用并且大大提高开发的效率。
LINQ 提供了一条更常规的途径即给 .Net Framework 添加一些可以应用于所有信息源( all sources of information )的具有多种用途( general-purpose )的语法查询特性( query facilities ),这是比向开发语言和运行时( runtime )添加一些关系数据( relational )特性或者类似 XML 特性( XML-specific )更好的方式。这些语法特性就叫做 .NET Language Integrated Query (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();
    }
}


这种的语法是不是和sql 语法非常像似呢。只是sql的写法一般select 在前而linq是在后的

转载于:https://www.cnblogs.com/yssoft/archive/2009/05/23/1487914.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值