linq中first() firstordefault() last() lastOrDefault() single() singleOrDeafult
一、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的更多相关文章
- 关于Linq中First、FirstOrDefault;Single、SingleOrDefault等方法的说明
关于Linq中First.FirstOrDefault:Single.SingleOrDefault等方法的说明 这里以First.FirstOrDefault进行说明,其他类似. 1.First:取 ...
- Linq特取操作之ElementAt,Single,Last,First源码分析
Linq特取操作之ElementAt,Single,Last,First源码分析 一:linq的特取操作 First/FirstOrDefault, Last/LastOrDefault, Eleme ...
- Linq中关键字的作用及用法
Linq中关键字的作用及用法 1.All:确定序列中的所有元素是否都满足条件.如果源序列中的每个元素都通过指定谓词中的测试,或者序列为空,则为 true:否则为 false. Demo: 此示例使用 ...
- linq中AsEnumerable和AsQueryable的区别
本文导读:用Linq来操作集合的时候会用到AsQueryable()和AsEnumerable(),何时该用AsQueryable()和何时该用AsEnumerable(),或许存在些疑惑.AsQue ...
- Linq中使用Left Join
use Test Create table Student( ID ,) primary key, ) not null ) Create Table Book( ID ,) primary key, ...
- 基础才是重中之重~理解linq中的groupby
linq将大部分SQL语句进行了封装,这使得它们更加面向对象了,对于开发者来说,这是一件好事,下面我从基础层面来说一下GroupBy在LINQ中的使用. 对GroupBy的多字段分组,可以看我的这篇文 ...
- Sliverlight linq中的数组筛选数据库中的数据
首先 什么是linq呢 ? LINQ即Language Integrated Query(语言集成查询),LINQ是集成到C#和Visual Basic.NET这些语言中用于提供查询数据能力的一个新特 ...
- c# List集合中First、Last、Single方法使用
操作符 如果源序列是空的 源序列只包含一个元素 源序列包含多个元素 First 抛异常 返回该元素 返回第一个元素 FirstOrDefault 返回default(TSource) 返回该元素 返回 ...
- Linq中 AsQueryable(), AsEnumerable()和ToList()的区别和用法
Linq中 AsQueryable(), AsEnumerable()和ToList()的区别和用法:在写LINQ语句的时候,往往会看到AsEnumerable() ,AsQueryable() 和T ...
随机推荐
- JAVA监听
http://www.cnblogs.com/xdp-gacl/p/3961929.html 不要按汉字的字面意思理解这东西,其实它就是把某个操作绑到了某个按纽上,当你按那个按纽的时候,它所绑定的操作 ...
- JS复习:第七章
第七章 函数表达式 一.定义函数的方式有两种:函数声明和函数表达式. 1.函数声明: function functionName(arg0 , arg1 , arg2){ //函数体... } 函数 ...
- jQuery第五章
jQuery对表单.表格的操作以及更多应用 一.表单应用 1.单行文本框应用 (1)获取和失去焦点改变样式 HTML代码如下: <form action="#" method ...
- Apple 移动设备绑定动态生成元素点击事件$(document).on('click',element,callback)失效解决方法
今天在工作中刚接触到了微信社区相关的开发工作,测试的时候发现,动态生成元素的点击事件在andriod设备上可以触发,而在apple移动设备上却无法触发.好奇的我赶紧百度了下,很快就在stackover ...
- hdu_5324_Boring Class(cdq分治+树状数组)
题目链接:hdu_5324_Boring Class 题意: 给出n个二维点对,求LIS长度和编号字典序最小的LIS(x非增,y非减) 题解: dp[i]=max(dp[j]) (i>j,l[i ...
- 多尺度二维离散小波重构waverec2
clc,clear all,close all; load woman; [c,s]=wavedec2(X,2,'haar');%进行2尺度二维离散小波分解.分解小波函数haar %多尺度二维离散小波 ...
- MVC3+EF4.1学习系列(十)----MVC+EF处理树形结构
通过前几篇文章 我们处理了 一对一, 一对多,多对多关系 很好的发挥了ORM框架的做用 但是 少说了一种 树形结构的处理, 而这种树形关系 我们也经常遇到,常见的N级类别的处理, 以及经常有数据与类别 ...
- web小技巧
如内容超出单元格,则隐藏style="TABLE-LAYOUT: fixed" 让弹出窗口总是在最上面: <body onblur="this.focus();&q ...
- Arch安装fcitx输入法
安装fcitx,安装gtk.qt模块. [root@ARCH ~]# pacman -S fcitx-im :: There are 4 members in group fcitx-im: :: R ...
- Chapter 14_2 全局变量声明
Lua中的全局变量不需要声明就可以使用.对于小程序十分方便,但是大型程序中 一处简单的笔误就可能造成难以发现的bug. 不过,这种性能可以改变.由于Lua将全局变量放在一个普通的table中,可以通过 ...