2009-04-30 76 views
3

我試圖完成一個簡單的任務,創建一個具有1:*關係的2個表的數據庫。疑難解答ADO.NET實體框架和1:*關係

在一個表(FOOS)我有

Id 
... 
... 

在其他(條)我有

Id 
FooId 
... 
... 
... 

我創建了一個外鍵關係從酒吧FOOS與Foriegn鍵表是指向FooId列的小節,以及指向Id列的Foos的主鍵表。

然後我創建了我的ADO.NET Entity數據模型,它正確地拾取了Foos和Bars表和關係並創建導航屬性。

從我的MVC應用程序中

現在我試圖讓一個Foo這樣的:

var foo = (from f in _db.Foos where f.Id == id select f).FirstOrDefault(); 

然後我嘗試訪問Foo對象的酒吧財產,沒有結果。 但是,如果我檢查_db.Bars集,我看到FooId設置爲正確的ID酒吧。

我應該怎麼做才能解決爲什麼關係不起作用?我已經看過很多教程和MSDN中關於表關係的文檔,但沒有什麼是顯而易見的錯誤。

我想在相關的情況下在ASP.NET MVC應用程序中使用它。

回答

4

使用上表FOOS包括

變種富=(從F IN _db.Foos.Include( 「條」)其中f.Id == ID選擇F).FirstOrDefault();

+0

謝謝,這表現很好。我想我已經習慣了Ruby on Rails,你不必明確要求加載相關的表。 – 2009-04-30 16:55:39