我有5张桌子
ChildInfo,FatherInfo,MotherInfo,GuardianInfo和提供的服务。
ChildInfo表具有3列DataAtAge1,DataAtAge2,DataAtAge3。
ChildInfo表还具有“主要联系人”列,其类型可能为M(母亲)F(父亲)G(监护人)
Childinfo表也具有MotherId,FatherId,GuardianId列。
除此之外,ServiceProvided表还具有ChildId,该表将其链接到ChildInfo,并具有提供给Children的医疗服务的日期和文本。 ServiceProvided具有一列servicetype,用于存储给定的帮助类型。
我面临的挑战是在单个linq查询中
我需要将所有ChildInfo以及DataAtAge1,DataAtAge2,DataAtAge3列显示为用逗号分隔的单个属性值, 如果PrimaryContact为M,则需要使用ChildInfo中的MotherID从MotherInfo中选择详细信息,对于F或G都是相同的
最后,我需要基于childId查询ServicesProvided并将每个服务类型显示为属性,并且该类型的所有服务均以逗号分隔。
我正在寻找对象列表,其中每个对象都具有这种结构
childid,childfirstname,childlastname,childdisability(disability1〜5的集合),PrimaryContactName,PrimaryContactAddress,ServiceType,ServiceDetails(将serviceprovidedto和注释作为单个字符串列出)。
主要联系人只有1个,但可以提供0个或具有多种服务类型的多种服务。
我根本无法在单个查询中执行此操作。有人可以帮忙还是可以指点一下?