zoukankan      html  css  js  c++  java
  • C# Linq语句

    委托:

    //delegate 返回值 委托名(参数);   //委托不能在方法中定义
    ////实例化委托,并赋值
    //委托名 实例名 = new 委托名(函数名)、lambda表达式;    //使用委托实例,就像使用普通的函数一样

    Lambda表达式:

    个人认为,和某些语言中的闭包类似,即表达式相当于一种匿名函数(可以赋值给委托delegate),例如lambda 表达式 x => x * x —— "=>"运算符的左边是输入参数,右边是返回值。

    delegate int del(int i);
    private void Form1_Load(object sender, EventArgs e)
    {
        del aDelegate = x => x * x;
        label1.Text = aDelegate(10) + "";   //输出100
    }

    LINQ to SQL、LINQ to XML、LINQ to DataSet、LINQ to Objects。

    基本使用:

    1、Query语法:

    int[] numbers = { 5, 10, 8, 3, 6, 12 };  //数据源必须是实现了IEnumerable接口的类型
    //基本语法结构(这条语句不会马上执行,只有当queryNum这个变量被使用时,才会执行这条语句):
    IEnumerable<int> queryNum =
        from num in numbers
        where num % 2 == 0
        orderby num
        select num;
    label1.Text = "";
    foreach (var i in queryNum)
    {
        label1.Text += i + " ";
    }

     2、Method语法:

    //升序方法
    IEnumerable<int> MethodNum = numbers.Where(num => num % 2 == 0).OrderBy(num => num);
    label1.Text = "";
    foreach (var i in MethodNum)
    {
        label1.Text += i + " ";
    }

    LINQ的几种基本操作:

    Select方法:

    避免了反射的开销。

  • 相关阅读:
    JS文本框下拉提示效果
    JS动态添加删除表格行
    JS验证 数字 电话号码 传真 邮箱 手机号码 邮编 日期
    TreeView 中CheckBox级联选中问题
    HashTable Dictionary
    JS操作Frame对象
    Winfrom 中怎样在回车时设置焦点
    Word 操作(未完待续)
    HTML5特性——prefetching预加载功能
    10个实用的 jQuery Mobile 插件推荐
  • 原文地址:https://www.cnblogs.com/yuyexiaoxiao/p/11920938.html
Copyright © 2011-2022 走看看