SortedDictionary sortDict....
так не работает... sortDict.OrderBy(p => Path.GetExtension(p.Key))
У класса SortedDictionary<TKey,TValue>
есть конструктор, который принимает IComparer<T>
для сравнения ключей.
Таким образом, если мы напишем нужный нам компарер, мы можем определить порядок сортировки ключей в коллекции.
Ниже код компарера, который сначала сравнивает расширения файлов, потом, если расширения одинаковые, сравнивает имена файлов. Таким образом словарь будет сортировать ключи сначала по расширению файла, потом по имени файла
public class ExtensionComparer : IComparer<string>
{
public int Compare(string x, string y)
{
var ret = string.Compare(Path.GetExtension(x), Path.GetExtension(y));
if (ret != 0) return ret;
return string.Compare(x, y);
}
}
Как проверить:
var dict = new SortedDictionary<string, bool>(new ExtensionComparer());
dict.Add("file2.txt", false);
dict.Add("file1.txt", true);
dict.Add("file2.1xt", false);
dict.Add("file1.1xt", true);
foreach (var kv in dict)
Console.WriteLine($"{kv.Key} - {kv.Value}");
Вывод
file1.1xt - True
file2.1xt - False
file1.txt - True
file2.txt - False
Виртуальный выделенный сервер (VDS) становится отличным выбором
Как достать записи из бд и динамически добавлять их в такой форме? Какой компонент использовать?
Делаю проект учебный - игру на unityВроде бы работала стрельба простая на RayCast'ах
Создаю бота для ВК используя Callback APIВсю основу уже сделал, есть БД, использую миграции
Как можно изменить chart doughnut ,чтобы он выглядел как на этой картинке? По умолчанию он выглядит как полный круг, на картинке же только половина...