重庆做商城网站设计,wordpress教材,jsp网站开发 英文,网站开发前端要学什么Linq是Language Integrated Query的简称#xff0c;它是微软在.NET Framework 3.5里面新加入的特性#xff0c;用以简化查询查询操作。以下主要介绍C#中Linq的AsEnumeralbe、DefaultEmpty和Empty操作符。
1、AsEnumeralbe操作符
AsEnumerable操作符可以将一个类型为IEnumer…Linq是Language Integrated Query的简称它是微软在.NET Framework 3.5里面新加入的特性用以简化查询查询操作。以下主要介绍C#中Linq的AsEnumeralbe、DefaultEmpty和Empty操作符。
1、AsEnumeralbe操作符
AsEnumerable操作符可以将一个类型为IEnumerableT的输入序列转换成一个IEnumerableT的输出序列其主要用于将一个实现了IEnumerableT接口的对象转换成一个标准的IEnumerableT接口对象。在Linq中、不同领域的Linq实现都有自己专属的操作符。
如IQueryableT通常是Linq to SQL的返回类型当我们直接在上面调用WhereT方法时调用的是Linq to sql的扩展方法因此有时候我们需要转换为标准的IEnumerableT才能调用Linq to OBJECT的扩展方法。
2、DefaultEmpty操作符
DefaultEmpty操作符可以用来为一个空的输入序列生成一个对应的含有默认元素的新序列。引用类型为null值类型为相应的默认值。有些标准操作符在一个空的序列上调用时会抛出一个异常而DefaultEmpty恰恰可以解决这个问题。
例如
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication
{class Program{static void Main(string[] args){Liststring ListInt new Liststring();ListInt.Add(C);ListInt.Add(Java);ListInt.Add(Python);string str ListInt.Where(s s.StartsWith(JavaScript)).DefaultIfEmpty().First();Console.WriteLine(strstr); //输出空白//使用string str1 ListInt.Where(s s.StartsWith(JavaScript)).First(); 如去掉DefaultEmpty就会报异常 Console.ReadKey();}}
}
3、Empty操作符
Empty操作符用于生成一个包含指定类型元素的空序列。
例如
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication
{class Program{static void Main(string[] args){IEnumerableint ints Enumerable.Emptyint();Console.WriteLine(ints.Count()); //输出0 Console.ReadKey();}}
}