LINQ查询语法

using System;

using System.Collections.Generic;

//第一步引用Linq命名空间 这一步应自动完成

using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;


namespace Linq
{
    class Program
    {
      
        static void Main(string[] args)
        {

            string[] names = { "Alonso", "Zheng", "Smith", "Jones", "Smythe", "Small", "Ruiz", "Hsieh", "Jongenson", "Singh", "Samba", "Fatimah" };

//这是一个看起来比较古怪的语句。它不像是c#语言,实际上from....where.....select语法类似于SQL数据库查询语言。但这个语句不是SQL,而是c#,在输入这些代码时,from、where和select会突出显示为关键字,这个古怪的语法对编译器而言是完全正确的。该语句分为四个部分,下面逐一介绍它们。

            var queryResults = from name in names where name.StartsWith("S") select name;


            foreach (var item in queryResults)
            {
                Console.WriteLine(item);
            }

            Console.ReadKey();

1 用var关键字声明结果变量

var是c#中的一个新关键字,用于声明一般的变量类型,特别适于包含LINQ查询的结果。var关键字告诉c#编译器,根据查询推断结果的类型。这样,就不必提前声明从LINQ查询返回的对象类型了-----编译器会推断出该类型。如果查询返回多个条目,该变量就是查询数据源中的一个对象集合。

2 指定数据源:from子句

变量name只是数据源中某一元素的代表,类似于foreach语句后面的变量名。指定from字句,就可以只查找集合的一个子集,而不必迭代所有的元素。

3 指定条件:where子句

可以在where子句中指定能应用于数据源中各元素的任意布尔表达式。实际上,where子句是可选的,甚至可以忽略,但大多数情况下,都要指定where条件,把结果限制为我们需要的数据。where子句称为LINQ中的限制运算符,因为它限制了查询的结果。

4选择元素:select子句

select子句是必需的,因为必须指定结果集中有哪些元素。这个结果集并不是很有趣,因为在结果集的每个元素中都只有一项name。如果结果集中有比较复杂的对象,使用select子句的有效性就比较明显。



最后打印出来,列表中的名称以S开头,按照它们在数组中的声明顺序排列


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值