如何使用linq通过集合中的属性进行排序?

时间:2010-05-21 19:51:07

标签: c# linq

我有一个链接序列,我想按User.Name(它的一系列用户)订购。

我该怎么做?

另外,如果我想删除User.Count = 0的任何用户,我可以在同一个查询中执行此操作吗?

1 个答案:

答案 0 :(得分:10)

IEnumerable<User> result = from user in users
                           where user.Count != 0
                           orderby user.Name
                           select user;

IEnumerable<User> result = users.Where(user => user.Count != 0)
                                .OrderBy(user => user.Name);

其中users是IEnumerable&lt; User&gt; (例如List&lt; User&gt;)。

这会选择user.Count != 0的所有用户,并按user.Name排序。{/ p>

请注意,原始集合users保持不变。