2010-11-25 102 views
0

我有兩個名爲Table1和Table2的表,它們有1-1的關係。如何使用LINQ獲取鏈接表?

在LINQ中,我有一個Table1實體的集合。是否有可能使用LINQ來提取集合中每個Table1實體的所有Table2對應物?

回答

0

如果您使用的是EntityFramework,那麼您可能需要Include。這裏有一個msdn article,它解釋了爲Entity Framework加載相關實體的許多方法。

如果您使用的是LinqToSql,您可能需要LoadWith。這裏有一個msdn article,它解釋了許多加載LinqToSql相關實體的方法。


如果你只是普通的舊的情況下,你可以這樣做:

List<Table1> items = GetList(); 
List<Table2> relatedItems = items.Select(t1 => t1.Table2).ToList(); 

它可能不是一個好主意,做這樣的代碼跟上面提到的ORM技術,因爲它們可能會產生每個原始實例對數據庫的一個查詢。