我有與Person_Addresses
(字段:PersonID
,AddressID
,ValidFrom
)有1:N關係的Person實體。我想獲得所有Person
記錄和關聯Person_Addresses
只有最新的ValidFrom。我應該如何使用ObjectQuery或IQueryable來做到這一點?LINQ到Entites和ObjectQuery
編輯: 我提到ObjectQuery
和IQueryable
,因爲我想有使用擴展方法(我想,那它是如何稱呼)的解決方案。另外我忘了提及我在使用Entity Framework的地方生成實體。我想獲得一個person_adress成員熱切加載的person對象。
這裏是實體結構: 人成員:INT ID,串名字,姓氏字符串,Partner_Address partneradress
Person_Address成員:int personid
,int adressid
,date validfrom
看起來很複雜,但應該是?生成的SQL應該是這樣的: SELECT [ID] ,[姓名] ,[姓氏] ,prt.AdressID FROM [人] p CROSS APPLY (\t SELECT TOP(1)[PERSONID],[ AdressId],[ValidFrom] \t FROM [Person_Addresses] PA \t其中,p。[ID] = PA。[PERSONID] \t ORDER BY [ValidFrom] DESC )PRT – Sys 2010-06-23 08:13:21