А возможно отсортировать список по длине строки?

Vladimirvolga

Пользователь
Регистрация
29.06.2017
Сообщения
134
Реакции
10
Баллы
18
Добрый день!
Возникла такая необходимость.
Подскажите, если не трудно и есть идеи.

Спасибо!
 
C#:
Развернуть Свернуть Копировать
var lst = project.Lists["data"].ToList(); // зеновский список
var sortedWords = lst.OrderByDescending(x => x.Length);
project.Lists["data"].Clear();
project.Lists["data"].AddRange(sortedWords);
 
C#:
Развернуть Свернуть Копировать
var lst = project.Lists["data"].ToList(); // зеновский список
var sortedWords = lst.OrderByDescending(x => x.Length);
project.Lists["data"].Clear();
project.Lists["data"].AddRange(sortedWords);
Подкорректирую вариант для многопотока
C#:
Развернуть Свернуть Копировать
project.Lists["list"].AddRange(new[]{"2","ещё одна", "","444","строка"}); // Заполнили демо данными
lock(SyncObjects.ListSyncer) {
    project.Lists["list"].GetItems("0-end", true)         // Взяли все строчки с удалением
        .Where(line => !string.IsNullOrEmpty(line))     // Убрали пустые строки
        .OrderByDescending(line => line.Length)          // Отсортировали по убыванию
        .ToList()                                       // Применили изменения
        .ForEach(project.Lists["list"].Add);              // Вернули данные в список
}

105606
 
  • Оценить
Реакции: Ilshakin

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)