0 / 0 / 2
Регистрация: 10.05.2014
Сообщений: 230
|
||||||
1 | ||||||
Оптимизация кода30.09.2016, 13:19. Показов 2666. Ответов 8
Метки нет (Все метки)
Здравствуйте. Имею такую задачу: проходиться по коллекции файлов, и проводить фильтр по определённым условиям. Причём условия формируются непосредственно перед проходом по всем файлам.
Выглядит сейчас это примерно так:
0
|
30.09.2016, 13:19 | |
Ответы с готовыми решениями:
8
Оптимизация кода Оптимизация кода Оптимизация кода Оптимизация кода |
.NET senior
441 / 359 / 137
Регистрация: 23.09.2016
Сообщений: 980
|
|
30.09.2016, 13:26 | 2 |
Ну и в чём проблема? в метод передаёте FileList.MainList и параметры фильтрации, внутри метода организуете цикл по MainList и, если текущий элемент удовлетворяет условиям - добавляете его в новый список, который потом из метода возвращаете.
0
|
Неадекват
1496 / 1233 / 247
Регистрация: 02.04.2010
Сообщений: 2,804
|
|
30.09.2016, 13:36 | 3 |
Сформируйте лямбду (Expression<Func<T, bool>>) и примените ее к коллекции через where.
0
|
0 / 0 / 2
Регистрация: 10.05.2014
Сообщений: 230
|
|
30.09.2016, 14:04 [ТС] | 4 |
bax_tang, спасибо. Проблема, видимо, в том, что я не совсем представляю себе как в метод передать параметры фильтрации. Мне бы пример
0
|
.NET senior
441 / 359 / 137
Регистрация: 23.09.2016
Сообщений: 980
|
||||||
30.09.2016, 14:52 | 5 | |||||
Antykus, пример:
0
|
0 / 0 / 2
Регистрация: 10.05.2014
Сообщений: 230
|
|||||||||||
30.09.2016, 15:42 [ТС] | 6 | ||||||||||
bax_tang, мне нужно чтобы в строке
0
|
.NET senior
441 / 359 / 137
Регистрация: 23.09.2016
Сообщений: 980
|
|
30.09.2016, 15:54 | 7 |
Antykus, а каким тогда образом Вы собираетесь проверять условия внутри метода? писать несколько перегрузок - не вариант, params object[] - тоже решение не очень красивое.
0
|
0 / 0 / 2
Регистрация: 10.05.2014
Сообщений: 230
|
|
30.09.2016, 16:06 [ТС] | 8 |
bax_tang, так в этом и вопрос, как это сделать грамотно) Я пока не богат глубокими знаниями в разработке, к сожалению
0
|
Неадекват
1496 / 1233 / 247
Регистрация: 02.04.2010
Сообщений: 2,804
|
||||||
30.09.2016, 16:40 | 9 | |||||
Antykus, Вот пример с заранее прописанными условиями, но ничто не мешает формировать предикат динамически.
0
|
30.09.2016, 16:40 | |
30.09.2016, 16:40 | |
Помогаю со студенческими работами здесь
9
Оптимизация кода Оптимизация кода Оптимизация кода Оптимизация кода Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи | |||||
Что такое HCL Notes и как с ним работать
InfoMaster 10.01.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) представляет собой комплексную платформу для совместной работы и обмена информацией в корпоративной среде. Это многофункциональное решение,. . .
|
Как работать с Git из Windows и Visual Studio
InfoMaster 10.01.2025
Работа с Git в Windows
Работа с Git в операционной системе Windows может быть осуществлена с помощью различных инструментов, каждый из которых обладает своими уникальными возможностями и. . .
|
Аналог оператора switch case в Python
InfoMaster 10.01.2025
Оператор switch case используется в программировании для выбора одного из нескольких вариантов исполнения кода. Однако в языке Python этот оператор отсутствует. Понимание аналогов switch case в. . .
|
Отличия абстрактного класса от интерфейса
InfoMaster 10.01.2025
В современной разработке программного обеспечения существуют два основных механизма реализации абстракции: абстрактные классы и интерфейсы. Эти инструменты, хотя и схожи в своей основной цели -. . .
|
Как работать в Git
InfoMaster 10.01.2025
Git — это одна из наиболее популярных систем контроля версий, которая активно используется разработчиками по всему миру. Она позволяет эффективно управлять изменениями в коде, координировать работу. . .
|
Реализация передвижения персонажа в Unity3d на C#
InfoMaster 10.01.2025
Реализация передвижения персонажа в Unity3D начинается с правильной настройки проекта. Этот этап критически важен для создания отзывчивого и плавного управления. Рассмотрим основные шаги для создания. . .
|
Docker: руководство для начинающих
InfoMaster 10.01.2025
В современном мире разработки программного обеспечения контейнеризация стала неотъемлемой частью процесса создания и развертывания приложений. Docker, как ведущая платформа контейнеризации, произвела. . .
|
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства
Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
|
Что такое NullReferenceException и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
|
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
|
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
|
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
|