相关疑难解决方法(0)

使用Lambda/Linq对列表对列表进行排序

我在字符串中有"按属性排序"的名称.我将需要使用Lambda/Linq对对象列表进行排序.

例如:

public class Employee
{
  public string FirstName {set; get;}
  public string LastName {set; get;}
  public DateTime DOB {set; get;}
}


public void Sort(ref List<Employee> list, string sortBy, string sortDirection)
{
  //Example data:
  //sortBy = "FirstName"
  //sortDirection = "ASC" or "DESC"

  if (sortBy == "FirstName")
  {
    list = list.OrderBy(x => x.FirstName).toList();    
  }

}
Run Code Online (Sandbox Code Playgroud)
  1. 而不是使用一堆ifs来检查fieldname(sortBy),是否有更简洁的方法进行排序
  2. 排序是否知道数据类型?

c# linq lambda linq-to-objects

264
推荐指数
9
解决办法
47万
查看次数

linq命令列表(MyObjects)

如何通过我的对象列表中的传递字符串值进行排序?我需要在我的List(Of)对象上进行分页和排序,分页没有问题,但我不知道是谁让Order By工作.

这是我目前正在做的事情,它的工作很棒:

Return returnReports.Skip(PageSize * (PageNumber-1)).Take(PageSize).ToList()
Run Code Online (Sandbox Code Playgroud)

我如何让它工作?

Return returnReports.OrderBy(SortColumn).Skip(skip).Take(PageSize).ToList()
Run Code Online (Sandbox Code Playgroud)

SortColumn是传递的字符串值

.net linq vb.net asp.net

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

linq ×2

.net ×1

asp.net ×1

c# ×1

lambda ×1

linq-to-objects ×1

vb.net ×1