我有兩個實體,每個實體都來自不同的數據庫,因此也有不同的edmx文件。然而,它們之間有一種傳染關係。Linq to Entities/Entity Framework交叉edmx「加入」
Foo
例如有許多Bar
s。
在EntityFramework中以最少的數據庫調用執行此連接的最簡單方法是什麼?
謝謝。
我有兩個實體,每個實體都來自不同的數據庫,因此也有不同的edmx文件。然而,它們之間有一種傳染關係。Linq to Entities/Entity Framework交叉edmx「加入」
Foo
例如有許多Bar
s。
在EntityFramework中以最少的數據庫調用執行此連接的最簡單方法是什麼?
謝謝。
您可以通過添加交叉模型導航屬性來完成此操作。這需要手動編輯EDMX。有一個例子,包括LINQ to Entities,here。
您可以通過使用視圖來表示其他數據庫中的數據。閱讀關於cross database joins in EF
我應用此視圖模型。但是當你需要一個新的實體包含來自一個edmx的一些屬性和來自其他edmx的一些其他屬性。除此之外,您希望獲得這個新的實體集的新實例,並使用此實例進行CRUD操作。最後,你需要爲不同模型分離這個實體集。我們這樣做。在「巴士」項目方面,我的一位朋友開發了這樣的模型。您可以將來自不同模型的不同實體與我們的框架結合起來,並提交每個實體找到他的路徑。但我仍在尋找更好的做法。 – 2012-04-14 15:43:54
你知道生成的SQL是跨數據庫嗎?還是它處理它作爲數據庫a的調用,然後調用數據庫b? – NikolaiDante 2008-12-18 14:24:16