一、firstordefault() 和 first()

    class Program
{
static void Main(string[] args)
{
List<Emp> list = new List<Emp> {
new Emp{ Id="", Name="张三", Age="", Address="河北石家庄"},
new Emp{ Id="", Name="李四", Age="", Address="山东济南"},
new Emp{ Id="", Name="王五", Age="", Address="河南郑州"}
};
//firstordefault 如果找不到返回默认值 first如果找不到会发生异常
var emp = list.Where(m => m.Name == "张三").FirstOrDefault();
Console.WriteLine(emp);
var emp2 = list.Where(m => m.Name == "").First();
Console.WriteLine(emp2);
}
}
class Emp
{
public string Id { get; set; }
public string Name { get; set; }
public string Age { get; set; }
public string Address { get; set; } }

二、last() lastordefault()

  class Program
{
static void Main(string[] args)
{
List<Emp> list = new List<Emp> {
new Emp{ Id="", Name="张三", Age="", Address="河北石家庄"},
new Emp{ Id="", Name="李四", Age="", Address="山东济南"},
new Emp{ Id="", Name="王五", Age="", Address="河南郑州"},
new Emp{ Id="", Name="王五", Age="", Address="天津武清"}
};
//lastOrdefult 和last 如果找不到返回默认值 last如果找不到会发生异常
var emp = list.Where(m => m.Name == "王五").LastOrDefault();
Console.WriteLine(emp.Address);
var emp2 = list.Where(m => m.Name == "").Last();
Console.WriteLine(emp2);
}
}
class Emp
{
public string Id { get; set; }
public string Name { get; set; }
public string Age { get; set; }
public string Address { get; set; } }
}

三、singe() singleordefault 唯一结果查询,超过一个结果报异常

     static void Main(string[] args)
{
List<Emp> list = new List<Emp> {
new Emp{ Id="", Name="张三", Age="", Address="河北石家庄"},
new Emp{ Id="", Name="李四", Age="", Address="山东济南"},
new Emp{ Id="", Name="王五", Age="", Address="河南郑州"},
new Emp{ Id="", Name="王五", Age="", Address="天津武清"}
};
// single 和singleordefault 如果序列超过一个会报异常,常用唯一结果查询
var emp = list.Where(m => m.Name == "王五").SingleOrDefault();
Console.WriteLine(emp.Address);
var emp2 = list.Where(m => m.Name == "王五").Single();
Console.WriteLine(emp2);
}
}
class Emp
{
public string Id { get; set; }
public string Name { get; set; }
public string Age { get; set; }
public string Address { get; set; } }

linq中first() firstordefault() last() lastOrDefault() single() singleOrDeafult的更多相关文章

  1. 关于Linq中First、FirstOrDefault;Single、SingleOrDefault等方法的说明

    关于Linq中First.FirstOrDefault:Single.SingleOrDefault等方法的说明 这里以First.FirstOrDefault进行说明,其他类似. 1.First:取 ...

  2. Linq特取操作之ElementAt,Single,Last,First源码分析

    Linq特取操作之ElementAt,Single,Last,First源码分析 一:linq的特取操作 First/FirstOrDefault, Last/LastOrDefault, Eleme ...

  3. Linq中关键字的作用及用法

    Linq中关键字的作用及用法 1.All:确定序列中的所有元素是否都满足条件.如果源序列中的每个元素都通过指定谓词中的测试,或者序列为空,则为 true:否则为 false. Demo: 此示例使用 ...

  4. linq中AsEnumerable和AsQueryable的区别

    本文导读:用Linq来操作集合的时候会用到AsQueryable()和AsEnumerable(),何时该用AsQueryable()和何时该用AsEnumerable(),或许存在些疑惑.AsQue ...

  5. Linq中使用Left Join

    use Test Create table Student( ID ,) primary key, ) not null ) Create Table Book( ID ,) primary key, ...

  6. 基础才是重中之重~理解linq中的groupby

    linq将大部分SQL语句进行了封装,这使得它们更加面向对象了,对于开发者来说,这是一件好事,下面我从基础层面来说一下GroupBy在LINQ中的使用. 对GroupBy的多字段分组,可以看我的这篇文 ...

  7. Sliverlight linq中的数组筛选数据库中的数据

    首先 什么是linq呢 ? LINQ即Language Integrated Query(语言集成查询),LINQ是集成到C#和Visual Basic.NET这些语言中用于提供查询数据能力的一个新特 ...

  8. c# List集合中First、Last、Single方法使用

    操作符 如果源序列是空的 源序列只包含一个元素 源序列包含多个元素 First 抛异常 返回该元素 返回第一个元素 FirstOrDefault 返回default(TSource) 返回该元素 返回 ...

  9. Linq中 AsQueryable(), AsEnumerable()和ToList()的区别和用法

    Linq中 AsQueryable(), AsEnumerable()和ToList()的区别和用法:在写LINQ语句的时候,往往会看到AsEnumerable() ,AsQueryable() 和T ...

随机推荐

  1. 【1】ubuntu 安装docker

    官方支持安装docker的Ubuntu版本: ubuntu trusty 14.04(LTS) (64位) ubuntu precise 12.04(LTS) (64位) ubuntu raring ...

  2. 《JS权威指南学习总结--6.8对象的三个属性》

    内容要点: 每一个对象都有与之相关的原型(prototype).类(class)和可扩展性 一.原型属性 1.对象的原型属性是用来继承属性的,这个属性是如此重要,以至于我们经常把 "0的原型 ...

  3. SPFA算法与dijkstra算法求单源最短路径的比较

    SPFA是运用队列,把所有的点遍历到没有能更新的,点可以重复入队 如题http://www.cnblogs.com/Annetree/p/5682306.html dijkstra是每次找出离源点最近 ...

  4. ZUFEOJ 2395 天棋哥哥大战AlphGo

    Description3月15日,人机围棋大战巅峰对决在韩国首尔落下帷幕.五番棋的最后一局中,韩国著名棋手李世乭尽管与人工智能“AlphaGo”缠斗至官子阶段,但在双双进入读秒后最终还是投子认输,以总 ...

  5. iOS开发之即时通讯之Socket(AsyncSocket)

    1.AsyncSocket介绍 如果需要在项目中像QQ微信一样做到即时通讯,必须使用socket通讯. iOS中Socket编程的方式: BSD Socket: BSD Socket 是UNIX系统中 ...

  6. JVM基础(4)-编译

    一.编译过程 不论是物理机还是虚拟机,大部分的程序代码从开始编译到最终转化成物理机的目标代码或虚拟机能执行的指令集之前,都会按照如下图所示的各个步骤进行: (其中绿色的模块可以选择性实现.) 很容易看 ...

  7. sql删除数据总结

    Delphi ADOQuery连接数据库的查询.插入.删除.修改 //查询记录 procedure TForm1.Button1Click(Sender: TObject); begin ADOQue ...

  8. blur事件

    blur事件是在元素失去焦点的时候触发,那么失去焦点的前提便是获得焦点. 哪些元素可以获取焦点呢? 1.超链接 2.input button textarea (without disabled) 3 ...

  9. Java对象的强、软、弱和虚引用原理+结合ReferenceQueue对象构造Java对象的高速缓存器

    //转 http://blog.csdn.net/lyfi01/article/details/6415726 1.Java对象的强.软.弱和虚引用 在JDK 1.2以前的版本中,若一个对象不被任何变 ...

  10. HDU 5765 Bonds

    比赛时候想了好久,不会.看了官方题解才会...... Bond是极小割边集合,去掉一个Bond之后,只会将原图分成两个连通块. 假设某些点构成的集合为 s(点集中的点进行状压后得到的一个十进制数),那 ...