First 和 FirstOrDefault , Last 和 LastOrDefault 有啥区别 [重复]

Posted

技术标签:

【中文标题】First 和 FirstOrDefault , Last 和 LastOrDefault 有啥区别 [重复]【英文标题】:What is the difference between First and FirstOrDefault , Last and LastOrDefault [duplicate]First 和 FirstOrDefault , Last 和 LastOrDefault 有什么区别 [重复] 【发布时间】:2016-09-22 07:28:48 【问题描述】:

我正在使用 LINQ 我使用 First 和 FirstOrDefault 都返回相同的结果有什么区别

【问题讨论】:

看看this example 【参考方案1】:

如果没有找到结果,First 和 Last 会抛出异常。 在这种情况下,FirstOrDefault 和 LastOrDefault 返回结果变量类型的默认值。

【讨论】:

【参考方案2】:

FirstOrDefault和LastOrDefault如果顺序中没有搜索项,不会抛出异常,它们会返回null。

【讨论】:

不完全是。如果 null 是返回类型的默认值,它们只会返回 null。如果是整数,则返回 0 等。 啊,如果你不愿意。它们返回变量类型的默认值

以上是关于First 和 FirstOrDefault , Last 和 LastOrDefault 有啥区别 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

为啥在 LINQ 中使用 First 而不是 FirstOrDefault? [复制]

何时使用 .First 以及何时将 .FirstOrDefault 与 LINQ 一起使用?

First,FirstOrDefault,Single,SingleOrDefault的区别

First,FirstOrDefault,Single,SingleOrDefault的区别

实体框架 4 Single() vs First() vs FirstOrDefault()

关于Linq中FirstFirstOrDefault;SingleSingleOrDefault等方法的说明