LINQ重要组成部分简介
创始人
2024-06-06 10:40:43
0

Linq有很多值得学习的地方,这里我们主要介绍LINQ重要组成部分,包括介绍Linq的查询语法等方面。

为了让Linq的查询语法更接近于C#和VB.NET, C# 3.0和VB.NET 9.0基于的模板、匿名方法和迭代器都是LINQ重要组成部分,其中包括了以下的重要特性:

1.隐藏类型的本地变量

C# 3.0提供了一个新的关键子var,这样程序员就可以不需要明确的定义一个本地变量,而是由编译器根据表达式来初始化该变量。比如: var name="Linq";通过该项特性,不再需要重复本地变量的类型,编译器会自动的推动类型,同时支持强类型。而且可以省去在foreach循环中定义迭代器类型

2.对象初始化程序

该特性让我们能够在对象定义的时候就给相应的字段和属性赋值.例如:

  1. class Person  
  2. {  
  3. ......  
  4. public string Name { get; set; }  
  5. public int Age { get; set; }  
  6. public string Nation { get; set; }  
  7. ......  

通过该特性就可以在一句声明语句中初始化该变量

  1. var linq = new Person { Name = "Linq"Age = "2"Nation = "USA" }; 

对于集合也是一样:

  1. ......  
  2. var linqs = new List[]{  
  3. new Person{Name="Linq to SQL",Age=1,Nation="USA"},  
  4. new Person{Name="Linq to XML",Age=2,Nation="UK"},  
  5. new Person{Name="Linq to DataSet",Age=3,Nation="GR"}  
  6. };  
  7. ...... 

就类似于用Add方法添加对象。但是要注意必须是实现了IEnumerable接口和提供了Add方法的类.

3.Lambda表达式
   linq       =>       linq.Age==2
(输入参数) (操作符) (表达式或是声明模块)

在没有定义参数类型的情况下,输入参数为隐藏类型。当然可以定义具体类型,比如(Person linq)

4.扩展方法

其实最简单的实现就是在第一个参数前加上this关键字。因为this关键字指示编译器把该方法作为扩展方法对待。但是扩展方法必须是声明在非模板静态类。

5.匿名类

其实匿名类只是没有类型名称而已,而实际的类型则由编译器在创建时确定.例如:

  1. var linq=new{"SQL to Object",4,"CN"}; 

该特性的好处是在快速返回简单的临时结果,有利于开发。但是也有它的局限性在里面。主要是不能够利用强类型的方式进行类的操作,同时不能用作方法的返回值 (除非该方法的返回值是Object类型)。还有就是在C#中匿名类是不可变的,也就是一旦创建就不能改变当中的属性值。以上介绍LINQ重要组成部分。

【编辑推荐】

  1. LinqDataSource控件剖析
  2. Linq To Sql学习经验
  3. Linq String类型浅析
  4. Linq组合查询之集成数据库语言查询
  5. Linq To SQL输出SQL语句剖析

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...