[英]Entity Framework linq query to return sub collection
我有一個沒有外鍵的表(不幸的是,我對此沒有控制權)。 我試圖返回一個實體及其相關集合,如下所示:
from charity in context.Charities
join registration in context.Registrations on charity.RegisteredNumber equals registration.RegisteredNumber
join annualReturn in context.AnnualReturns on charity.RegisteredNumber equals annualReturn.RegisteredNumber
select new { Charity = charity, Registration = registration, AnnualReturn = annualReturn}
這會給我返回一個具有相關注冊信息的慈善機構列表(正確)。
但是,一個慈善機構有多個AnnualReturn
而這僅返回一個。 這可能是該匿名對象內部的集合嗎?
我正在尋找的輸出大致如下:
{ Charity = singleCharity, Registration = singleRegistration, AnnualReturns = List<AnnualReturn>}
謝謝
讓我們試試這個。
from ar in context.AnnualReturns
group ar by annualReturn.RegisteredNumber into annualReturn
join charity in context.Charities
on annualReturn.Key equals charity.RegisteredNumber
join registration in context.Registrations
on charity.RegisteredNumber equals registration.RegisteredNumber
select new { Charity = charity, Registration = registration, AnnualReturn = annualReturn }
也許這就是您想要的:
from charity in context.Charities
join registration in context.Registrations on charity.RegisteredNumber equals registration.RegisteredNumber
select new { Charity = charity,
Registration = registration,
AnnualReturn = context.AnnualReturns.Where(at=>ar.RegisteredNumber==charity.RegisteredNumber)}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.