2012-02-17 189 views
0

我有3個表,其中行程,乘客在許多一對多的關係:許多到許多實體框架

旅行{TRIPID}

客運{PassengerName}

TripPassenger { TRIPID,PassengerName}

以爲我想找回乘客的名單中旅行,例如在旅途ID 1中的所有乘客:

TripId PassengerName 
1  admin 
1  derp 
1  alex 
2  admin 

任何解決方案或指導方針?

+0

這與MVC3有關嗎? – Robaticus 2012-02-17 18:32:51

+0

@羅伯蒂斯,這是絕對不相關的。問題重新標記。 – 2012-02-17 18:33:41

+0

謝謝Darin。另外,我認爲OP可能錯誤地表示了他的數據模型。正如所寫的,如果您想要選擇旅程1中的乘客列表,則只需查詢TripPassenger表,因爲它包含旅程ID和乘客姓名。 – Robaticus 2012-02-17 18:42:39

回答

0

首先查詢行程表,並獲得必要的旅行對象

Trip tripToSearch = context.Trips.SingleOrDefault(trip => trip.Id == 1); 

然後找到旅行對象的客運對象的集合

tripToSearch.Passengers 

上面會返程客流對象的列表,它與您搜索的Trip對象關聯

+0

這是行不通的。 Trip和Passenger之間沒有直接關係。 – Robaticus 2012-02-17 18:32:25

+0

我認爲那麼你可以直接查詢TripPassenger表格作爲context.TripPassengers.Where(tp => tp.TripId == 1)這將返回所有具有TripId的TripPassenger對象== 1 – Jayanga 2012-02-17 18:36:47

+0

EF不會映射純粹的連接表默認。旅行和乘客之間可能存在關聯,但OP沒有提及它(根本沒有關於該帖子的很多信息)。 – 2012-02-17 18:40:27

相關問題