У меня есть объект в C#, который имеет несколько свойств:Получить объекты из коллекции с Linq
// Pseudo class
public class
{
Id;
To;
From;
}
У меня есть много экземпляров этого класса в Collection
. Что может выглядеть следующим образом:
object 1:
Id: 1
To: "PathA"
From: "PathB"
object 2:
Id: 2
To: "PathB"
From: "PathC"
object 3:
Id: 3
To: "PathC"
From: "PathA"
Теперь то, что я хочу сделать, это получить все элементы из коллекции, что, когда значение To
не появляется в From
в любом из объектов. Что бы привести следующие:
object 1:
Id: 1
To: "PathA"
From: "PathB"
object 2:
Id: 2
To: "PathB"
From: "PathC"
Поскольку последний объект Id: 3
имеет PathA
в From
собственности, которая уже существует где-то в To
собственности.
Как это сделать с помощью запроса Linq?
'действительно работает как это' - он делает, один из конструкторов HashSet принимает значение IEnumerable ', так как Linq' Select' return 'IEnumerable ' это будет компилироваться и работать.Я также люблю метод расширения MoreLINQ 'ToHashSet()', вам не нужно объявлять '' общий параметр, все выведено. –
@IlyaIvanov :) приятно. Мне нравится, когда структура работает так, как ожидалось! –