【发布时间】:2021-09-14 22:48:56
【问题描述】:
我正在尝试为如下所示的功能实现自定义排序: 中间名是可选的用户列表(First Middle Last name 组合)。 以下是我对排序的一些标准:
1-first,middle,last
2-first,last,middle
3-last,middle,first
4-last,first,middle
我尝试使用 linq 的 orderby 后跟 then 但它不会那样工作,因为当我获得用户列表时,我正在将用户列表转换为 IEnumerable 并将其传递给视图以将其绑定到下拉列表。 这是我分配给视图模式的最终列表:
viewModel.Users= users
.Select(usr=> new SelectListItem()
{
Text = $"{usr.FirstName} {usr.MiddleName} {usr.LastName}",
Value = $"{usr.FirstName} {usr.MiddleName} {usr.LastName}"
}).ToArray();
所以问题是我如何根据上述标准对 IEnumerable 项目进行排序?
我知道这不适用于现有的排序&我需要一些自定义排序方面的帮助,即更多地创建一个能够根据上述标准进行排序的扩展方法。 任何帮助表示赞赏。 谢谢。
【问题讨论】:
-
我觉得你在问什么有点不清楚。也许是一个实际的示例输入和输出
标签: c# asp.net-mvc-5