1. ·First - 返回集合中的第一个元素;不延迟
  2. ·FirstOrDefault - 返回集合中的第一个元素(如果没有则返回默认值);不延迟
  3. ·Last - 返回集合中的最后一个元素;不延迟
  4. ·LastOrDefault - 返回集合中的最后一个元素(如果没有则返回默认值)
  5. ·ElementAt - 返回集合中指定索引的元素;不延迟
  6. ·ElementAtOrDefault - 返回集合中指定索引的元素(如果没有则返回默认值);不延迟
  7. ·Contains - 判断集合中是否包含有某一元素;不延迟
  8. ·Any - 判断集合中是否有元素满足某一条件;不延迟
  9. ·All - 判断集合中是否所有元素都满足某一条件;不延迟
  10. ·Count - 返回集合中的元素个数,返回int;不延迟
  11. ·LongCount - 返回集合中的元素个数,返回long;不延迟
  12. ·Sum - 集合应为数字类型集合,求其和;不延迟
  13. ·Min - 返回集合的最小值;不延迟
  14. ·Max - 返回集合的最大值;不延迟
  15. ·Average - 集合应为数字类型集合,求其平均值;不延迟
  16. ·Aggregate - 根据输入的表达式获取一个聚合值;不延迟
  17. ·Cast - 将集合转换为强类型集合;延迟
  18. ·DefaultIfEmpty - 查询结果为空则返回默认值;延迟
  19. ·SequenceEqual - 判断两个集合是否相同;不延迟
  20. ·OfType - 过滤集合中的指定类型;延迟
  21. ·ToArray - 将集合转换为数组;不延迟
  22. ·ToList - 将集合转换为List<T>集合;不延迟
  23. ·ToDictionary - 将集合转换为<K, V>集合;不延迟
  24. Summary3.aspx.cs
    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Xml.Linq; using System.Collections.Generic;
    using DAL; public partial class LINQ_Summary3 : System.Web.UI.Page
    {
    NorthwindDataContext _ctx = new NorthwindDataContext();
    string[] _ary = null; protected void Page_Load(object sender, EventArgs e)
    {
    _ary = new string[] { "asp.net", "csharp", "xhtml", "css", "javascript",
    "wcf", "wpf", "silverlight", "linq", "wf",
    "sqlserver", "asp.net ajax", "ssis", "ssas", "ssrs" }; // First - 返回集合中的第一个元素;不延迟
    // FirstOrDefault - 返回集合中的第一个元素(如果没有则返回默认值);不延迟
    Summary_First_FirstOrDefault(); // Last - 返回集合中的最后一个元素;不延迟
    // LastOrDefault - 返回集合中的最后一个元素(如果没有则返回默认值)
    Summary_Last_LastOrDefault(); // ElementAt - 返回集合中指定索引的元素;不延迟
    // ElementAtOrDefault - 返回集合中指定索引的元素(如果没有则返回默认值);不延迟
    Summary_ElementAt_ElementAtOrDefault(); // Contains - 判断集合中是否包含有某一元素;不延迟
    Summary_Contains(); // Any - 判断集合中是否有元素满足某一条件;不延迟
    Summary_Any(); // All - 判断集合中是否所有元素都满足某一条件;不延迟
    Summary_All(); // Count - 返回集合中的元素个数,返回int;不延迟
    // LongCount - 返回集合中的元素个数,返回long;不延迟
    Summary_Count_LongCount(); // Sum - 集合应为数字类型集合,求其和;不延迟
    Summary_Sum(); // Min - 返回集合的最小值;不延迟
    Summary_Min(); // Max - 返回集合的最大值;不延迟
    Summary_Max(); // Average - 集合应为数字类型集合,求其平均值;不延迟
    Summary_Average(); // Aggregate - 根据输入的表达式获取一个聚合值;不延迟
    Summary_Aggregate(); // Cast - 将集合转换为强类型集合;延迟
    Summary_Cast(); // DefaultIfEmpty - 查询结果为空则返回默认值;延迟
    Summary_DefaultIfEmpty(); // SequenceEqual - 判断两个集合是否相同;不延迟
    Summary_SequenceEqual(); // OfType - 过滤集合中的指定类型;延迟
    Summary_OfType(); // ToArray - 将集合转换为数组;不延迟
    Summary_ToArray(); // ToList - 将集合转换为List<T>集合;不延迟
    Summary_ToList(); // ToDictionary - 将集合转换为<K, V>集合;不延迟
    Summary_ToDictionary();
    }
    }
    First - 返回集合中的第一个元素;不延迟
    FirstOrDefault - 返回集合中的第一个元素(如果没有则返回默认值);不延迟
    /**//// <summary>
    /// First - 返回集合中的第一个元素;不延迟
    /// FirstOrDefault - 返回集合中的第一个元素(如果没有则返回默认值);不延迟
    /// </summary>
    void Summary_First_FirstOrDefault()
    {
    string s = (from a in _ary
    select a).First(a => a.StartsWith("s"));
    // string s = (from a in _ary
    // select a).FirstOrDefault(a => a.StartsWith("xxx"));
    // s == null result.InnerHtml += s + "<br />";
    result.InnerHtml += "<br />";
    }运行结果
    silverlight Last - 返回集合中的最后一个元素;不延迟
    LastOrDefault - 返回集合中的最后一个元素(如果没有则返回默认值)
    /**//// <summary>
    /// Last - 返回集合中的最后一个元素;不延迟
    /// LastOrDefault - 返回集合中的最后一个元素(如果没有则返回默认值)
    /// </summary>
    void Summary_Last_LastOrDefault()
    {
    string s = (from a in _ary
    select a).Last(a => a.StartsWith("s"));
    // string s = (from a in _ary
    // select a).LastOrDefault(a => a.StartsWith("sss"));
    // s == null result.InnerHtml += s + "<br />";
    result.InnerHtml += "<br />";
    }运行结果
    ssrs ElementAt - 返回集合中指定索引的元素;不延迟
    ElementAtOrDefault - 返回集合中指定索引的元素(如果没有则返回默认值);不延迟
    /**//// <summary>
    /// ElementAt - 返回集合中指定索引的元素;不延迟
    /// ElementAtOrDefault - 返回集合中指定索引的元素(如果没有则返回默认值);不延迟
    /// </summary>
    void Summary_ElementAt_ElementAtOrDefault()
    {
    string s = (from a in _ary
    select a).ElementAt();
    // string s = (from a in _ary
    // select a).ElementAtOrDefault(1000);
    // s == null result.InnerHtml += s + "<br />";
    result.InnerHtml += "<br />";
    }运行结果
    css Contains - 判断集合中是否包含有某一元素;不延迟
    /**//// <summary>
    /// Contains - 判断集合中是否包含有某一元素;不延迟
    /// </summary>
    void Summary_Contains()
    {
    bool b = (from a in _ary
    select a).Contains("javascript"); result.InnerHtml += b.ToString() + "<br />";
    result.InnerHtml += "<br />";
    }运行结果
    True Any - 判断集合中是否有元素满足某一条件;不延迟
    /**//// <summary>
    /// Any - 判断集合中是否有元素满足某一条件;不延迟
    /// </summary>
    void Summary_Any()
    {
    bool b = (from a in _ary
    select a).Any(p => p.Length > ); result.InnerHtml += b.ToString() + "<br />";
    result.InnerHtml += "<br />";
    }运行结果
    True All - 判断集合中是否所有元素都满足某一条件;不延迟
    /**//// <summary>
    /// All - 判断集合中是否所有元素都满足某一条件;不延迟
    /// </summary>
    void Summary_All()
    {
    bool b = (from a in _ary
    select a).All(p => p.Length > ); result.InnerHtml += b.ToString() + "<br />";
    result.InnerHtml += "<br />";
    }运行结果
    False Count - 返回集合中的元素个数,返回int;不延迟
    LongCount - 返回集合中的元素个数,返回long;不延迟
    /**//// <summary>
    /// Count - 返回集合中的元素个数,返回int;不延迟
    /// LongCount - 返回集合中的元素个数,返回long;不延迟
    /// </summary>
    void Summary_Count_LongCount()
    {
    int i = (from a in _ary
    select a).Count(p => p.Length > );
    // long i = (from a in _ary
    // select a).LongCount(p => p.Length > 10); result.InnerHtml += i.ToString() + "<br />";
    result.InnerHtml += "<br />";
    }运行结果 Sum - 集合应为数字类型集合,求其和;不延迟
    /**//// <summary>
    /// Sum - 集合应为数字类型集合,求其和;不延迟
    /// </summary>
    void Summary_Sum()
    {
    int i = (from a in _ary
    select a.Length).Sum(); result.InnerHtml += i.ToString() + "<br />";
    result.InnerHtml += "<br />";
    }运行结果 Min - 返回集合的最小值;不延迟
    /**//// <summary>
    /// Min - 返回集合的最小值;不延迟
    /// </summary>
    void Summary_Min()
    {
    int i = (from a in _ary
    select a.Length).Min(); result.InnerHtml += i.ToString() + "<br />";
    result.InnerHtml += "<br />";
    }运行结果 Max - 返回集合的最大值;不延迟
    /**//// <summary>
    /// Max - 返回集合的最大值;不延迟
    /// </summary>
    void Summary_Max()
    {
    int i = (from a in _ary
    select a.Length).Max(); result.InnerHtml += i.ToString() + "<br />";
    result.InnerHtml += "<br />";
    }运行结果 Average - 集合应为数字类型集合,求其平均值;不延迟
    /**//// <summary>
    /// Average - 集合应为数字类型集合,求其平均值;不延迟
    /// </summary>
    void Summary_Average()
    {
    double d = (from a in _ary
    select a.Length).Average(); result.InnerHtml += d.ToString() + "<br />";
    result.InnerHtml += "<br />";
    }运行结果
    5.8 Aggregate - 根据输入的表达式获取一个聚合值;不延迟
    /**//// <summary>
    /// Aggregate - 根据输入的表达式获取一个聚合值;不延迟
    /// </summary>
    void Summary_Aggregate()
    {
    // 以下算法的Aggregate相当于Sum
    double d = (from a in _ary
    select a.Length).Aggregate((x, y) => x + y); result.InnerHtml += d.ToString() + "<br />";
    result.InnerHtml += "<br />";
    }运行结果 Cast - 将集合转换为强类型集合;延迟
    /**//// <summary>
    /// Cast - 将集合转换为强类型集合;延迟
    /// </summary>
    void Summary_Cast()
    {
    ArrayList al = new ArrayList();
    al.Add("asp.net");
    al.Add("csharp");
    al.Add("xhtml"); var list = al.Cast<string>(); foreach (string s in list)
    {
    result.InnerHtml += s + "<br />";
    }
    result.InnerHtml += "<br />";
    }运行结果
    asp.net
    csharp
    xhtml DefaultIfEmpty - 查询结果为空则返回默认值;延迟
    /**//// <summary>
    /// DefaultIfEmpty - 查询结果为空则返回默认值;延迟
    /// </summary>
    void Summary_DefaultIfEmpty()
    {
    var list = (from a in _ary
    where a.Length >
    select a).DefaultIfEmpty("xxx"); foreach (string s in list)
    {
    result.InnerHtml += s + "<br />";
    }
    result.InnerHtml += "<br />";
    }运行结果
    xxx SequenceEqual - 判断两个集合是否相同;不延迟
    /**//// <summary>
    /// SequenceEqual - 判断两个集合是否相同;不延迟
    /// </summary>
    void Summary_SequenceEqual()
    {
    bool b = (from a in _ary
    where a.Length >
    select a).SequenceEqual(from a in _ary
    where a.Length >
    select a); result.InnerHtml += b.ToString() + "<br />";
    result.InnerHtml += "<br />";
    }运行结果
    True OfType - 过滤集合中的指定类型;延迟
    /**//// <summary>
    /// OfType - 过滤集合中的指定类型;延迟
    /// </summary>
    void Summary_OfType()
    {
    object[] objects = { , "a", , "b", , "c" }; var list = objects.OfType<string>(); foreach (string s in list)
    {
    result.InnerHtml += s + "<br />";
    }
    result.InnerHtml += "<br />";
    }运行结果
    a
    b
    c ToArray - 将集合转换为数组;不延迟
    /**//// <summary>
    /// ToArray - 将集合转换为数组;不延迟
    /// </summary>
    void Summary_ToArray()
    {
    string[] ary = (from p in _ctx.Products
    where p.ProductName.Length >
    select p.ProductName).ToArray(); foreach (string s in ary)
    {
    result.InnerHtml += s + "<br />";
    }
    result.InnerHtml += "<br />";
    }运行结果
    Jack's New England Clam Chowder
    Louisiana Fiery Hot Pepper Sauce
    Original Frankfurter grüne So?e
    Uncle Bob's Organic Dried Pears ToList - 将集合转换为List<T>集合;不延迟
    /**//// <summary>
    /// ToList - 将集合转换为List<T>集合;不延迟
    /// </summary>
    void Summary_ToList()
    {
    var list = (from a in _ary
    where a.Length >
    select a).ToList(); foreach (string s in list)
    {
    result.InnerHtml += s + "<br />";
    }
    result.InnerHtml += "<br />";
    }运行结果
    silverlight
    asp.net ajax ToDictionary - 将集合转换为<K, V>集合;不延迟
    /**//// <summary>
    /// ToDictionary - 将集合转换为<K, V>集合;不延迟
    /// </summary>
    void Summary_ToDictionary()
    {
    var dic = (from p in _ctx.Products
    where p.ProductName.Length >
    select p).ToDictionary(p => p.ProductID); foreach (var p in dic)
    {
    result.InnerHtml += p.Key + ":" + p.Value.ProductName + "<br />";
    }
    result.InnerHtml += "<br />";
    }运行结果
    :Uncle Bob's Organic Dried Pears
    :Jack's New England Clam Chowder
    :Louisiana Fiery Hot Pepper Sauce
    :Original Frankfurter grüne So?e

LINQ查询操作符的更多相关文章

  1. .NET 3.5(5) - LINQ查询操作符之Select、Where、OrderBy、OrderByDescending

    .NET 3.5(5) - LINQ查询操作符之Select.Where.OrderBy.OrderByDescending 介绍    ·Select - Select选择:延迟    ·Where ...

  2. LINQ查询操作符之Select、Where、OrderBy、OrderByDescending、GroupBy、Join、GroupJoin及其对应的查询语法

    介绍    ·Select - Select选择:延迟    ·Where - Where查询:延迟    ·OrderBy - 按指定表达式对集合正序排序:延迟    ·OrderByDescend ...

  3. LINQ查询操作符 LINQ学习第二篇[转]

    一.投影操作符 1. Select Select操作符对单个序列或集合中的值进行投影.下面的示例中使用select从序列中返回Employee表的所有列: using (NorthwindDataCo ...

  4. LINQ查询操作符 LINQ学习第二篇

    一.投影操作符 1. Select Select操作符对单个序列或集合中的值进行投影.下面的示例中使用select从序列中返回Employee表的所有列: using (NorthwindDataCo ...

  5. LINQ查询操作符之First、FirstOrDefault、Last、LastOrDefault、ElementAt、ElementAtOrDefault、Contains、Any、All、Coun

    ·First - 返回集合中的第一个元素:不延迟 ·FirstOrDefault - 返回集合中的第一个元素(如果没有则返回默认值):不延迟 ·Last - 返回集合中的最后一个元素:不延迟 ·Las ...

  6. C#编程(六十二)---------LINQ标准的查询操作符

    LINQ标准的查询操作符 首先我们来看一下LINQ的操作符,可根据查询操作符的操作”类型”进行分类,如把它们分成投影,限制,排序,联接,分组,串联,聚合,集合,生成,转换,元素,相等,量词,分割等. ...

  7. 转linq中的Single()、First()、Take(1) LINQ 标准的查询操作符 排序 orderby、thenby、Take

    Single():操作一个集合,同时强要求只有一个对象匹配,并返回这一个. First():操作一个集合,可以有多个对象匹配,但是只返回第一个. Take(1):操作一个集合,可以有对个对象匹配,单只 ...

  8. LinQ实战学习笔记(三) 序列,查询操作符,查询表达式,表达式树

    序列 延迟查询执行 查询操作符 查询表达式 表达式树 (一) 序列 先上一段代码, 这段代码使用扩展方法实现下面的要求: 取进程列表,进行过滤(取大于10M的进程) 列表进行排序(按内存占用) 只保留 ...

  9. LINQ标准查询操作符详解(转)

     一. 关于LINQ       LINQ 英文全称是“Language-Integrated Query”,中文为“语言集成查询”,它是微软首席架构师.Delphi 之父和C# 之父——Anders ...

随机推荐

  1. c++下各种编码格式转换的方法

    1.利用c++11新特性 std::wstring_convert配合std::codecvt模板类 作者:Gomo Psivarh链接:https://www.zhihu.com/question/ ...

  2. 从零开始Vue项目实战(一)-准备篇

    从前参与过一个react项目的代码编写,大神搭建的框架,我主要负责业务逻辑代码编写,现在回想起来似乎又什么都不会,现在为了巩固前端知识,决定用Vue来做这个项目的移动端网站,我本人Vue是从零开始的, ...

  3. ASP.NET SignalR 与LayIM配合,轻松实现网站客服聊天室(四) 添加表情、群聊功能

    休息了两天,还是决定把这个尾巴给收了.本篇是最后一篇,也算是草草收尾吧.今天要加上表情功能和群聊.基本上就差不多了,其他功能,读者可以自行扩展或者优化.至于我写的代码方面,自己也没去重构.好的,我们开 ...

  4. 【洛谷P1363】幻象迷宫

    P1363 幻想迷宫 显然,若从原图中起点走到相邻的图中对应的"起点"位置 ,就可以无限走下去, 若一个点从原图中可以到达,到了非原图中也可以到达,就可以无限走下去 我们不妨记录下 ...

  5. 【洛谷P2426】删数

    删数 题目链接 一道裸的区间DP,f[l][r]表示剩下区间[l,r]时的最大价值 可以由f[1~l-1][r]和f[l][r+1~n]转移过来 详见代码: #include<algorithm ...

  6. 【洛谷P2216】[HAOI2007]理想的正方形

    理想的正方形 [题目描述] 一个a*b的矩阵,从中取一个n*n的子矩阵,使所选矩阵中的最大数与最小数的差最小. 思路: 二维的滑动窗口 对于每行:用一个单调队列维护,算出每个长度为n的区间的最大值和最 ...

  7. 【Openjudge 9277 Logs Stacking堆木头】 题解

    题目链接:http://noi.openjudge.cn/ch0206/9277/ ... #include <algorithm> #include <iostream> # ...

  8. linux 学习(二)防火墙

    ubuntu 第四 防火墙 安装 sudo apt-get install ufw 启用 sudo ufw enable 拒绝所有 sudo default deny 开启端口 sudo ufw al ...

  9. Element.getBoundingClientRect()

    Element.getBoundingClientRect()方法会返回元素的大小和相对于视口的位置 语法: var domRect = element.getBoundingClientRect() ...

  10. Python基础—02-数据类型

    数据类型 存储单位 最小单位是bit,表示二进制的0或1,一般写作b 最小的存储单位是字节,用byte表示,1B = 8b 1024B = 1KB 1024KB = 1MB 1024MB = 1GB ...