programing

C# 리스트내림차순

testmans 2023. 4. 15. 08:30
반응형

C# 리스트내림차순

다음 순서로 정렬을 받고 싶습니다.Product.Name내림차순으로

목록을 오름차순으로 정렬하는 아래 기능과 마찬가지로 역순으로 정렬할 수 있습니까?

var newList = list.OrderBy(x => x.Product.Name).ToList();

물론입니다.

var newList = list.OrderByDescending(x => x.Product.Name).ToList();

문서: OrderByDescending(IENumerable, Func).

코멘트에 대한 답변:

var newList = list.OrderByDescending(x => x.Product.Name)
                  .ThenBy(x => x.Product.Price)
                  .ToList();

네. 대신 사용OrderBy.

var newList = list.OrderBy(x => x.Product.Name).Reverse()

이거면 될 거야

list.OrderByDescending();

잘 먹히네요.

내 프로젝트의 이 코드 조각을 봐

내 모델 내의 속성을 기준으로 목록을 다시 정렬하려고 합니다.

 allEmployees = new List<Employee>(allEmployees.OrderByDescending(employee => employee.Name));

하지만 나는 문제에 직면했다.small and capital letters exist그래서 그것을 해결하기 위해 문자열 comparr를 사용했습니다.

allEmployees.OrderBy(employee => employee.Name,StringComparer.CurrentCultureIgnoreCase)

목록을 내림차순으로 정렬하기 위한 두 가지 옵션

방법 1 지정된 키에 대한 주문 방법OrderByDescending()

List<Product> myList = new() {
    new Product("A"),
    new Product("Z"),
    new Product("C")
};
myList = myList.OrderByDescending(x => x.Name).ToList();
Debug.WriteLine(
    $"{myList[0].Name}" + // 'Z'
    $"{myList[1].Name}" + // 'C'
    $"{myList[2].Name}"   // 'A'
);

제품의 예

class Product
{
    public string Name { get; private set; }
    public Product(string Name)
    {
        this.Name = Name;
    }
}

방법 2 오름차순 정렬 후 Reverse() 사용

myList = myList.OrderBy(x => x.Name).ToList();
myList.Reverse();

Reverse()는 다음과 같은 범용 타입에 편리합니다.List<string>

문자열 목록 역 정렬

List<string> stringList= new() { "A", "Z", "C" };
stringList.Sort();
stringList.Reverse();
list = new List<ProcedureTime>(); sortedList = list.OrderByDescending(ProcedureTime=> ProcedureTime.EndTime).ToList();

이렇게 하면 시간을 내림차순으로 정렬할 수 있습니다.

언급URL : https://stackoverflow.com/questions/3925258/c-sharp-list-orderby-descending

반응형