У меня есть список прямоугольников и список точек. Я хочу построить запрос LINQ, который будет соответствовать списку точек с соответствующими прямоугольниками. Что-то вроде этого:Linq join without equals
// Does not compile
var matches = from rect in rectangles
join point in points on rect.Contains(point)
select new { rect, point };
Как выполнить что-то подобное с помощью LINQ?
EDIT:
Мои списки одинакового размера - у меня есть один пункт, чтобы соответствовать с одного прямоугольника и прямоугольники не пересекаются.
Однако проблема заключается не столько в решении этой конкретной проблемы. В общем, мне интересно, как присоединиться к двум спискам при любых условиях, кроме просто «равно».
Научитесь любить методы-цепочки LINQ и эти виды вопросов исчезают в мгновение ока. –
Я на самом деле предпочитаю цепи методов LINQ - если вы можете найти способ решить эту проблему таким образом, я бы хотел ответить! – Phil
Что это означает для вас, чтобы прямоугольник содержал точку? В System.Drawing.Rectangle есть точка местоположения. Вы имеете в виду, совпадает ли точка с точкой расположения прямоугольника или она находится где-то внутри области данного прямоугольника? –