Hoi allen,
ik heb een collectie van entiteiten in 1 tabel die onderling aan elkaar gelinkt zijn middels een parentId en een apart type hebben.
Een parent item kan meerdere childs hebben.
Nu wil ik eigenlijk met 1 LINQ query een parent item ophalen met alle child-items daaronder, alleen kom er niet echt uit.
De datastructuur is als volgt. Alle data komt dus uit 1 tabel!
Een programme heeft dus meerdere rooms, een room heeft meerdere sessions etc. etc.
In eerste instantie dacht ik dit op te kunnen lossen door de tabel meerdere malen aan zichzelf te joinen, maar dan krijg ik veel te veel resultaten terug, wat ook logisch is aangezien je alles aan elkaar joined. Eigenlijk zou ik 1 object terug willen krijgen.
Met een recursieve functie zou dit volgens mij mogelijk moeten zijn, maar ik kom er niet helemaal uit.
Iemand die mij een LINQ voorzetje kan geven?
ik heb een collectie van entiteiten in 1 tabel die onderling aan elkaar gelinkt zijn middels een parentId en een apart type hebben.
Een parent item kan meerdere childs hebben.
Nu wil ik eigenlijk met 1 LINQ query een parent item ophalen met alle child-items daaronder, alleen kom er niet echt uit.
De datastructuur is als volgt. Alle data komt dus uit 1 tabel!
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| { programme { id: GUID type: tpEventProgramme rooms: [{ id: GUID, parent-id: GUID Programme type: tpRoom Sessions : [{ id: GUID, parent-id: GUID room type: tpSession Presentations: [{ id: GUID, parent-id: GUID session type: tpPresentation }] }] }] } } |
Een programme heeft dus meerdere rooms, een room heeft meerdere sessions etc. etc.
In eerste instantie dacht ik dit op te kunnen lossen door de tabel meerdere malen aan zichzelf te joinen, maar dan krijg ik veel te veel resultaten terug, wat ook logisch is aangezien je alles aan elkaar joined. Eigenlijk zou ik 1 object terug willen krijgen.
Met een recursieve functie zou dit volgens mij mogelijk moeten zijn, maar ik kom er niet helemaal uit.
Iemand die mij een LINQ voorzetje kan geven?