这两个 lambda 表达式有区别吗?

发布于 2024-09-26 23:44:36 字数 326 浏览 1 评论 0原文

这两个 Lambda 表达式有什么区别?第二个似乎更紧凑,我应该总是这样做吗?

DataContext.Employee.Where(c=>c.id==check_id && c.username==user_name).Select(c=>c.Name).FirstOrDefault();

DataContext.Employee.FirstOrDefault(c=>c.id==check_id && c.username==user_name).Name;

What is the difference if any between these two Lambda Expressions ? And the second one seems more compact should I always go for that ?

DataContext.Employee.Where(c=>c.id==check_id && c.username==user_name).Select(c=>c.Name).FirstOrDefault();

and

DataContext.Employee.FirstOrDefault(c=>c.id==check_id && c.username==user_name).Name;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

网白 2024-10-03 23:44:36

第二个版本可能会抛出 NullReferenceException 如果未找到匹配元素且类型的默认值为 null

第一个版本没有这个问题。

The second version can throw a NullReferenceException if a matching element is not found and the default value for the type is null.

The first version does not have this problem.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文