LINQ匿名类型剖析
创始人
2024-06-06 18:01:43
0

LINQ有很多值得学习的地方,这里我们主要介绍LINQ匿名类型,包括介绍新建一个具有City和Distance 两个属性的LINQ匿名类型来实现等方面

LINQ匿名类型(Anonymous Types)

LINQ能够利用的另一个C#和VB新特性之一就是对“LINQ匿名类型”的支持。这允许你不需明确声明对象模型就能很容易地创建和使用内联的类型结构,因为类型可以通过数据的初始 化推断出来。这在使用LINQ查询“自定义构形(custom shape)”数据时非常的有用。

例如,考虑这样一个场景:你正在处理一个具有许多属性的数据库或者强类型的集合-但是你只关心其中少数的 几个字段。与创建和处理整个类型相比,仅返回你所需要的字段将会更加有用些。我们来新建一个"step6.aspx"文件来实现以上操作:

  1. <%@ Page Language="C#" AutoEventWireup="true" 
    CodeFile="Step6.aspx.cs" Inherits="Step6" %> 
  2.    
  3.  
  4.  
  5.  id="form1" runat="server"> 
  6.  
  7.    
  8. Anonymous Type

     
  9.    
  10.  ID="GridView1" runat="server"> 
  11.  
  12.    
 
  •  
  •  
  •  

  • 在我们的后台代码文件中我们将编写一个使用LINQ匿名类型的LINQ查询,如下所示:

    1. using System;  
    2. using System.Web.UI;  
    3. using System.Query;  
    4.    
    5. public partial class Step6 : System.Web.UI.Page  
    6. {  
    7. protected void Page_Load(object sender, EventArgs e)  
    8. {  
    9. TravelOrganizer travel = new TravelOrganizer();  
    10.    
    11. GridView1.DataSource = from location in travel.PlacesVisited  
    12. & nbsp; orderby location.City  
    13. & nbsp; select new {  
    14. & nbsp; & nbsp;City = location.City,  
    15. & nbsp; & nbsp;Distance = location.Distance  
    16. & nbsp; };  
    17.  
    18. GridView1.DataBind();  
    19. }  
    20. }  

    注意,我们并没有像上面一样从select子句中返回一个"location"对象,我们通过新建一个具有City和Distance 两个属性的LINQ匿名类型来实现。这两个属性的类型是根据它们初始化时赋与的值来自动确定的,在这里是一个是 string,另一个是int。

    【编辑推荐】

    1. LINQ to SQL Table浅谈
    2. Linq语句问题的解决方法
    3. Ling to sql更新实体概述
    4. Linq实体继承简单描述
    5. Linq Library概述

    相关内容

    热门资讯

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