[CSHARP-488] Support joins in Linq Created: 07/Jun/12  Updated: 20/Mar/14  Resolved: 11/Jun/12

Status: Closed
Project: C# Driver
Component/s: None
Affects Version/s: 1.4.2
Fix Version/s: None

Type: New Feature Priority: Major - P3
Reporter: Tim Kellogg Assignee: Craig Wilson
Resolution: Won't Fix Votes: 0
Labels: join, linq, query
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I would like to have joins supported, to join multiple collections. For instance:

    var matches = (from driver in driverCollection.AsQueryable()
                   join car in carCollection.AsQueryable() on driver.CarId equals car.Id
                   where driver.Name == "Tim Kellogg"
                   select new { DriverName = driver.Name, CarNumber = car.Number }).ToArray();

I would assume that the initial naive algorithm would be

1. Get all drivers that match the WHERE clause
2. Get all cars that satisfy the ON clause (and the WHERE, if it applies)
3. Do the SELECT clause



 Comments   
Comment by Craig Wilson [ 11/Jun/12 ]

Tim, thanks for your feature request. The server does not support joins and pulling back multiple datasets and joining them on the client side would have extremely poor performance. Therefore, we will not be adding join support into the linq provider.

Generated at Wed Feb 07 21:36:59 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.