Есть checkedlistbox
. В нем несколько строк (см. картинка). Также есть List<T>
, который я хочу отфильтровать по выбранным полям. Сейчас я делаю вот так.
foreach (object itemChecked in filterChecked.CheckedItems)
{
if (itemChecked.ToString() == "Есть дата первых торгов")
{
list.Where(x => x.Pole.ToString() != "");
}....
}
Можно ли использовать фильтрованный список. Сделать что то типа этого?
list.FilteredItems
Если я правильно понял, нужно следующее:
IEnumerable<Foo> result = list;
foreach (object itemChecked in filterChecked.CheckedItems)
{
if (itemChecked.ToString() == "Есть дата первых торгов")
{
result = result.Where(x => x.Pole.ToString() != "");
}
if (itemChecked.ToString() == "Пустая графа вторых торгов")
{
result = result.Where(x => x.PoleA.ToString() != "условие");
}
if (itemChecked.ToString() == "Движимое имущество")
{
result = result.Where(x => x.PoleB.ToString() != "условие");
}
// и т. д.
}
var filteredList = result.ToList();
var selectedNames = filterChecked.CheckedItems.Select(x => x.ToString());
var filteredList = list.Where(x => selectedNames.Contains(x.Pole)).ToList();
Можно задать словарь с ключами вида элементов CheckedListBox и значениями в виде фильтрующего условия.
var source = new Dictionary<string, Func<T, bool>>();
Заполнить filterChecked
ключами словаря.
Фильтрация сократится до
foreach (var condition in filterChecked.CheckedItems)
{
list = list.Where(source[condition.ToString()]);
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Не добавляется foreing keyПроверил столбцы на null,таблицы пустые,типы подходят,длина тоже Уже не знаю что делать,завтра курсовая
На хостинге(cpanel) в диспетчере почему-то отсутствует файл error log, можно как-то настроить его отображение? добавление в начале проблемного скрипта...
Не выводит изображение в blade шаблонеВсе остальное отображается корректно