【发布时间】:2026-01-10 05:15:01
【问题描述】:
我想做的是这段代码
filtered = GetUserList().OrderBy(p => p.Name).ToList();
以一般的方式
public static List<T> sortBy<T>(string field, List<T>list)
{
//list.OrderBy(p=>p.Equals(field)).ToList();
//list = list.OrderBy(p => p.GetType().GetProperties().ToList().Find(d => d.Name.Equals(field))).ToList();
return list;
}
有什么建议吗?
【问题讨论】:
-
你有什么问题?
-
generic在这里可能是错误的术语。从您的代码来看,您正在尝试通过作为字符串传递的属性对列表进行排序。 -
我需要按给定值(字段)排序,但每次都不同,所以我需要以通用方式进行排序。所以我尝试为此目的创建 sortBy 方法,但它不起作用
-
是的,ManfredRadlwimmer 就是这样
-
我遇到了一个非常相似(虽然稍微复杂一点)的案例,我将其链接为副本。使用那里提供的代码,您应该能够找到解决此特定问题的方法。