LINQ Присоединиться к нескольким полям - PullRequest
5 голосов
/ 14 декабря 2011

Что будет эквивалентно следующему запросу T-SQL в L2E с использованием лямбда-выражений?

Select * from a INNER JOIN b on a.Foo = b.Foo OR a.Foo = b.Bar  

Я хочу присоединиться к a и b, когда a.Foo равно b.Foo ИЛИ b.Bar

Спасибо.

1 Ответ

8 голосов
/ 14 декабря 2011

Вы не можете выполнить объединение в стиле "или" в LINQ с фактическим предложением объединения. Все предложения о присоединении в LINQ являются эквивалентами. Самое близкое, что вы можете прийти - это предложение where:

var query = from a in A
            from b in B
            where a.Foo == b.Foo || a.Foo == b.Bar
            select new { a, b };
...