Список упорядочен определенным образом - PullRequest
0 голосов
/ 24 июня 2018
public class Program
 {
    static void Main(string[] args)
    {
        List<Category> categoryList = new List<Category>()
        {
            new Category(){CategoryType = "BP"},
            new Category(){ CategoryType ="BY"},
            new Category(){ CategoryType ="BT1"},
            new Category(){ CategoryType ="BT3"},
            new Category(){ CategoryType ="BTU"},
            new Category(){ CategoryType ="BT2"},
        };
        categoryList = categoryList.OrderBy(x => x.CategoryType).ToList();
        categoryList.ForEach(item => Console.WriteLine(item.CategoryType));
        Console.ReadKey();
    }
    public class Category
    {
        public string CategoryType { get; set; }
        public int Count { get; set; }
    }
}

Через вышеупомянутую программу я получаю результат как P

BT1
BT2
BT3
BTU
BY

Однако я хочу получить результат как BP, BY, BT1, BT2, BT3,BTU.

1 Ответ

0 голосов
/ 24 июня 2018

Вы можете сделать заказ по длине названия категории, а затем по ее значению:

categoryList =
    categoryList.OrderBy(x => x.CategoryType.Length).ThenBy(x => x.CategoryType).ToList();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...