LINQ巩固

  1. LINQ过滤运算符

    Where 基于谓词函数过滤值

    测试例子如下:
public class TestModel
{
public string Name { get; set; }
public string Age { get; set; }
} List<TestModel> lst = new List<TestModel>()
{
new TestModel(){Name = "张三" },
new TestModel(){Name = "李四" },
};
var querys1 = from item in lst where item.Name == "李四" select item;
var querys2 = lst.Where(item => item.Name == "李四");
  1. LINQ Join操作
Join运算符连接两个序列配键的基础join...in...on...equals...
GroupJoin连接连个序列和组匹配元素join...in...on...equals...into

测试例子:

··· C#

List lst = new List()

        {
new TestModel(){Name = "张三", Age = "23" },
new TestModel(){Name = "李四", Age = "43" },
};
List<CameraModel> lstCamera = new List<CameraModel>()
{
new CameraModel(){Name = "张三", Price = "sfsf" },
new CameraModel(){Name = "张三", Price = "测试工程时" },
new CameraModel(){Name = "李四", Price = "买菜的" }
};

var query = from it in lst

join item in lstCamera on it.Name equals item.Name

select new

{

it.Name,

it.Age,

item.Price

};

···

  1. LINQ投影操作
Select操作转换函数的基础项目值
SelectMany操作项目的值是根据上的转换函数,以及拼合成一个单一的序列的序列
var querys = from ite in lst from item in lstCamera select ite;
  1. LINQ排序运算符
OrderBy按升序操作排序值
OrderByDescending按降序排序操作值
ThenBy执行二次元排序按升序
ThenByDescending执行二次排序以降序
Reverse进行反转的元素顺序
  1. LINQ分组操作
GroupBy组织项目的顺序组,并将其返回IEnumerable类型的集合
ToLookup执行在其中的密钥对的序列被返回分组运算
  1. LINQ转换操作
AsEnumerable返回输入类型为IEnumerable T
AsQueryableIEnumerable被转换为IQueryable
Case执行一个集合的元素的转换到一个指定类型
OfType在它们的基础上过滤值,这取决于它们的能力,以被转换为特定类型
ToArray转换为数组
ToDictionary转为字典
ToList转为列表
ToLookup强制执行查询,并把元素融入一个Lookup TKey,TElement键选择器函数
  1. LINE级联
Concat两个序列被连接为一个单一的一个序列
  1. LINQ聚合
Aggergate对集合的值进行操作执行自定义聚合操作
Average计算集合的平均值
Count计算数量
LongCount()计算一个巨大集合中的数量
Max找出一个集合中的最大值
Min找出一个最小值
Sum计算总和
  1. LINQ量词操作
All返回一个值'true',如果序列中的所有元素满足谓词条件
Any确定通过搜索一个序列是否相同的任何元素满足规定条件
Contains如果找到某个特定元素有一个序列返回一个'true'的值,如果序列不包含特定的元素,'false‘值返回
  1. LINQ分区操作符
Skip跳过一些指定的序列中一些元素,并返回其余的
SkipWhile相同,唯一的例外调到多个元素,跳过的是由一个布尔条件指定
Take采取元素指定数量的序列,并跳过其余的
TakeWhile相同,布尔条件指定
  1. LINQ元素操作符
ElementAt返回一个特定的索引中的一个元素存在于一个集合
ElementAtOrDefault相同与ElementAt,未找到返回默认值
First检索集合的满足的第一个元素
FirstOrDefault相同,未检索到返回默认值
Last用法同上
LastOrDefault同上
Single返回集合唯一元素或唯一元素满足的一定条件
SingleOrDefault不解释
05-27 19:41