.net - 使用 Linq 查找列表中按属性 A 排序的第一个对象,然后是属性 B

标签 .net linq c#-3.0

我有一个点的无序列表( List<Point> ),我想在按 X 和 Y 排序时找到列表中的第一个点。

注意:我不想实际更改列表中项目的顺序。

最佳答案

这不会改变原始列表的顺序,但会对列表的结果枚举进行排序并选择排序后的第一个点。它通过返回默认(空)点来处理空列表情况。

var firstPoint = Points.OrderBy( p => p.X ).ThenBy( p => p.Y ).FirstOrDefault();

关于.net - 使用 Linq 查找列表中按属性 A 排序的第一个对象,然后是属性 B,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1469448/

相关文章:

c# - Xunit 和 Mock 数据与最小起订量

c# - for循环中的sql

c# - Linq 列出查询 C#

c# - 将列表复制到新列表仍然会更改旧列表的值

linq - 如何根据子集合属性对集合进行排序

c# - 序列化问题

javascript - 为什么调试时myArray.length显示为0?

c# - 比较两个xml文件并显示差异

c# - 将 XElement 转换为 XmlNode

c# - 无法将类型 'System.Linq.IQueryable' 隐式转换为 'System.Data.Entity.DbSet'