У меня есть два списка одного и того же типа объекта с столбцами: < /p>
CustomerID
ProductID
33, 120A
33, 240B
33, 14CD
33, 984A
34, 120A
34, 240B
35, 14CD
35, 984A
39, 120A
39, 240B
39, 14CD
39, 984A
< /code>
Как я могу найти все клиенты, которые заказали все те же продукты, что и выбранное клиент (33)? Если другой клиент не заказывал продукт или заказал другой продукт, он должен быть исключен, списки должны быть такими же, как идентификатор клиента.List selectedCust = Source.Where(x => x.CustomerID.Equals(cust)).ToList();
List allOtherCust = Source.Where(x => !x.Customer.Equals(cust)).ToList();
List matchedCust = allOtherCust.Where(x => selectedCust.All(y => x.ProductID.Equals(y.ProductID)).Select(x => x.CustomerID).ToList();
< /code>
Результат будет соответствовать возвращению 39. < /p>
Я также пытался преобразовать продукт в строку, разделенную запятыми, но это не было рабочее свойство, так как все примеры - одна строка, которую я обнаружил. Я пытаюсь избежать использования кучу петлей для/foreach.
Спасибо
Подробнее здесь: https://stackoverflow.com/questions/796 ... -for-all-r
Как сравнить два списка объектов в C#, где поле соответствует всем рядам ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как сравнить два списка объектов, используя равный метод объекта в Python
Anonymous » » в форуме Python - 0 Ответы
- 9 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как сравнить два списка объектов, используя равный метод объекта в Python
Anonymous » » в форуме Python - 0 Ответы
- 9 Просмотры
-
Последнее сообщение Anonymous
-