C# 复杂LINQ多表多对多

C# 复杂LINQ多表多对多,c#,linq,C#,Linq,我对林克还是新手。 这个场景可能与linq有关吗 我有4张桌子: 1. Garage (ID, Name) 2. Car (ID, GarageID, Name) -- a garage has multiple cars. 3. Dealer (ID, Name) 4. Car_Dealership (ID, CarID, DealerID) -- many to many table between car and dealer 我想收集所有车库以及每个车库处理的每个经销商 你怎么能用LI

我对林克还是新手。 这个场景可能与linq有关吗

我有4张桌子:

1. Garage (ID, Name)
2. Car (ID, GarageID, Name) -- a garage has multiple cars.
3. Dealer (ID, Name)
4. Car_Dealership (ID, CarID, DealerID) -- many to many table between car and dealer
我想收集所有车库以及每个车库处理的每个经销商

你怎么能用LINQ做到这一点


提前谢谢

您应该能够使用以下内容:

var map =
  from garage in Garages
  join car in Cars on garage.ID equals car.GarageID
  join car_dealership in Car_Dealerships on car.ID equals car_dealership.CarID
  join dealer in Dealers on car_dealership.DealerID equals dealer.ID
  group dealer by garage;

foreach (var garage in map)
{
  Console.WriteLine("Garage: " + garage.Key.Name);

  foreach (var dealer in garage)
    Console.WriteLine("  Dealer: " + dealer.Name);
}

以后,请发布您尝试过的内容,以便我们可以帮助您解决遇到的具体问题。

这当然是可能的。你遇到了什么问题吗?或者你只是想看看是否可能?就像我说的,我是初学者,所以我不知道怎么做。我已经看过很多例子,但没有一个与我想要的类似。
以后,请发布您尝试过的内容,以便我们可以帮助您解决遇到的具体问题。
为什么?总会有一些安德鲁回答这样的问题:)你真了不起,安德鲁。它就像一个符咒!与我研究的例子不同,您的例子向我展示了linq非常像sql查询,而且因为我知道如何进行tsql,所以我有一个很好的起点,可以先将我的下一个问题附加到一些测试中。