Find items from a list which exist in another list
c#, collections, lambda, linq
Solution
What you want to do is `Join` the two sequences. LINQ has a `Join` operator that does exactly that:
List<PropX> first;
List<PropA> second;
var query = from firstItem in first
join secondItem in second
on firstItem.b equals secondItem.b
select firstItem;
Note that the `Join` operator in LINQ is also written to perform this operation quite a bit more efficiently than the naive implementations that would do a linear search through the second collection for each item.
Problem
I have a `List<PropA>` ``` PropA { int a; int b; } ``` and another `List<PropX>` ``` PropX { int a; int b; } ``` Now i have to find items from `List<PropX>` which exist in `List<PropA>` matching b property using lambda or LINQ.