實體框架中是否有一種方法可以讓我們知道兩個實體是否相關?用實體框架檢索相關實體
回答
假設你的變量都被附加到相同的上下文中。您想知道您的bar1
變量是否爲foo.bars
集合中的某個欄值。你可以只是做:
theyAreEqual = foo.bars.Contains(bar1);
如果實體變量不附加到上下文,那麼你可能有不同的變量在邏輯上指的是同一數據庫記錄,但實際上會指向不同對象。所以,你需要比較鍵值:
theyAreLogicallyEqual = foo.bars.Select(b => b.BarId).Contains(bar1.BarId);
我假設你知道這一點,但對於其他人閱讀這個答案,the differences in value and reference type equality是這裏重要的。
我剛剛評論過以前請看看 – unknownUser
您可以使用Linq to Entities。您可以匹配entity1中的每個對象,並檢查entity2中是否存在相應的數據/對象實體。
using (NorthwindEntities nw = new NorthwindEntities())
{
var cusotmers = from c in nw.Customers
where c.City == "London"
select c;
}
你可以在這裏找到更多的信息: http://msdn.microsoft.com/en-us/library/cc161164.aspx
這個應用程序是基於XML完全可定製的文件,所以我們可以擁有不同對象的嵌入式Web表單;在對象實例化之後,我們希望兩個人知道什麼是相關實體。 – unknownUser
- 1. 實體框架加載相關實體
- 2. 實體框架:更新相關實體
- 3. 實體框架分離實體和相關實體
- 4. 實體框架 - 渴望加載相關實體的相關實體
- 5. 實體框架相同的實體
- 6. 使用相關實體更新實體框架
- 7. 使用include加入實體框架中的相關實體
- 8. 使用實體框架加載相關實體6
- 9. 使用實體框架返回所有相關實體
- 10. 實體框架 - 關聯實體問題
- 11. 使用RetrieveMultipleRequest檢索相關實體
- 12. 實體框架 - 急切加載相關實體
- 13. 刪除實體框架中的所有相關實體
- 14. 對實體框架中所需相關實體的驗證
- 15. 實體框架 - ObjectContext.DeleteObject()當相關實體孤立時
- 16. 實體框架7 - 訪問相關實體
- 17. 在實體框架中選擇的不是非相關實體
- 18. 實體框架CTP5重新加載相關實體
- 19. 更新相關實體的實體框架的DbContext
- 20. 實體框架 - 替換相關實體不包括
- 21. 如何加載相關的實體與實體框架核心
- 22. 實體框架入門負載相關的實體
- 23. 實體框架:從相關級聯表創建單個實體
- 24. 建模相關的實體與SQL Server和實體框架
- 25. 實體框架 - 拉回相關數據
- 26. 實體框架實體json
- 27. 實體框架實體沒有顯示相關實體的屬性
- 28. 如何檢索基類(實體框架)?
- 29. ASP.NET MVC3實體框架 - 數據檢索
- 30. 實體框架搜索實體屬性和實體ICollection
你可以循環實體的屬性,並檢查他們反對用'is'功能。例如。 'if(property is relatedEntityType)'儘管我假設你是系統的架構師,所以應該知道哪些實體是相關的。你有沒有可能爲我們提供更多信息? – ThePower
這個問題真的可以採取多種方式。想到的兩個是:(a)給定一個作者實體*對象*和一個圖書實體*對象*,我怎麼知道這是本書的作者之一,還是一個更復雜的問題。或者(b)給出一個實體*類型*和另一個實體*類型*,我如何判斷它們是否在同一個模型中?還是直接相關?類似的東西。我猜測下面的一種方式,其他人可能會猜測另一種方式。或者你的意思是別的嗎? –
因爲對象實例化依賴於在XML文件上存在的對象實例(一個動態對象實例化) – unknownUser