How do you perform a CROSS JOIN with LINQ to SQL?

Viewed 61827

How do you perform a CROSS JOIN with LINQ to SQL?

5 Answers

A cross-join is simply the Cartesian product of two sets. There's no explicit join operator for it.

var combo = from p in people
            from c in cars
            select new
            {
                p.Name,
                c.Make,
                c.Model,
                c.Colour
            };

Based on Steve's answer, the simplest expression would be this:

var combo = from Person in people
            from Car    in cars
            select new {Person, Car};
Related