• c#学习笔记之LINQ


    LINQ(Language-INtegrated Query语言整体的查询),LINQ就像数据库里的SQL查询语句一样,对数据进行查询,排序等等工作。

    LINQ的语法和SQL的语法也基本类似,不同也就是LINQ的select语句放在最后面。

    eg:

    result =
                    from   customer  in customers//从那选择查询
                    where  customer.FirstName == "Donna"//查询满足的条件
                    select  customer;//映射
    LINQ语言中的关键字:

    LINQ查询的一些例子

    using System;
    using System.Collections.Generic;
    
    using System.Linq;//LINQ的namespace
    
    using System.Text;
    using System.Threading.Tasks;
    
    namespace ConsoleApplicationLINQ
    {
        class Program
        {
            static void Main(string[] args)
            {
                int[] arr = new int[] { 8, 5, 89, 41, 1, 2, 3, 65, 1 };//创建一个arr数组,用于LINQ的查找
                var m = 
                    from n in arr//从arr数组里查找n
     
                    where n < 5 //n的条件是小于5
    
                    orderby n//按照n的大小排序
     
                    select n;

    arr[2] = 4;
    foreach (var n in m) { Console.WriteLine(n); } } } }

    输出结果为

    1

    1

    2

    3

    4

    注意到最后的输出结果中有4,LINQ语言中query查询的的声明与初始化并没有真正的执行查询操作,query是在foreach语句中才真正执行的,所以在声明了查询之后,再修改数组里面的值,query查询是对修改后的数组进行查询,所以里面包括新的数值4.

    如果要在声明查询时就要执行查询。以避免后面的修改对查询产生影响,可以使用ToList()或者ToArray()方法缓存查询得到的结果。

    例如将上面的声明改为:

    var m =
                    (from n in arr
     
                    where n < 5

                    orderby n
     
                    select n).ToList();

    输出的结果就为

    1

    1

    2

    3

  • 相关阅读:
    单例模式
    mysql之group_concat函数详解
    json中如何将key中的引号去掉
    show status,修改mysql用户密码 使用
    ThinkPHP连贯查询之子查询
    输入1-53周,输出1-53周的开始时间和结束时间
    Java编辑环境搭建
    Java语言简介
    html中iframe根据子页面内容动态修改高度
    JavaScript---通过正则表达式验证表单输入
  • 原文地址:https://www.cnblogs.com/zyqBlog/p/4458065.html
Copyright © 2020-2023  润新知