@BONDiana
The Rookie

Как найти элемент в коллекции List по конкретному полю объекта?

Доброго времени суток. Имеется две коллекции. Необходимо последовательно провести поиск совпадений ряда полей объектов одного списка в другом, после каждой операции производя действие. Объекты полей не идентичны, поэтому сравнение необходимо делать по ряду полей.

Пример неработающего кода ниже =)
static (List<FileInfo> coincidenc, List<FileInfo> uniqueValuesDir1, List<FileInfo> uniqueValuesDir2) FilesChecker(FileInfo[] dir1, FileInfo[] dir2)
{
    List<FileInfo> coincidenc = new();
    List<FileInfo> uniqueValuesDir1 = dir1.ToList();
    List<FileInfo> uniqueValuesDir2 = dir2.ToList();

    foreach (var item in uniqueValuesDir2)
    {
        if (uniqueValuesDir1.Find(x => x.Name == item.Name)) != -1) 
        {
            coincidenc.Add(item);
            uniqueValuesDir1.Remove(item);
            uniqueValuesDir2.Remove(item);
        }
    }
    return (coincidenc, uniqueValuesDir1, uniqueValuesDir2);
}
  • Вопрос задан
  • 80 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы