LINQ to SQL, query fra flere tabeller
Table EventId
EventName
Table CustomField
Id
EventId
FieldName
Table Signup
Id
EventId
Table CustomFieldValue
Id
SignupId
CustomFieldId
Value
Event
1, Skitur
2, Fodbold
CustomField
1, 1, Fornavn
2, 1, Højde
3, 2, Fornavn
4, 2, By
Signup
1, 1, anders@andeby.dk
2, 1, mickey@andeby.dk
3, 2, fedtmule@andeby.dk
4, 2, anders@andeby.dk
CustomFieldValue
1, 1, 1, Anders
2, 1, 2, 150cm
3, 2, 1, Mickey
4, 2, 2, 140cm
5, 3, 3, Fedtmule
6, 3, 4, Andeby
7, 4, 3, Anders
8, 4, 4, Andeby
Som I kan se på ovenstående har jeg en datastruktur med Events, CustomFields, Signups og CustomFieldValues. Der kan oprettes brugerdefinerede CustomFields for hvert Event.
Jeg har brug for at lave et udtræk over alle Signups for et Event, inkl en oversigt over indtastningerne i CustomFieldValue.
Det kunne f.eks se sådan ud:
** Oversigt for Skitur **
----------------------------------------
SignupId | Email | Fornavn | Højde
----------------------------------------
1 | anders@andeby.dk | Anders | 150cm
2 | mickey@andeby.dk | Mickey | 140cm
** Oversigt for Fodbold **
----------------------------------------
SignupId | Email | Fornavn | By
----------------------------------------
3 | fedtmule@andeby.dk | Fedtmule | Andeby
4 | anders@andeby.dk | Anders | Andeby
Jeg kunne godt tænke mig en løsning som benytter LINQ to SQL, så jeg på mit Event objekt kan udvikle en metode der hender EventSignupInfo og er et view lig de to ovenstående eksempler. Formålet er at det skal kunne eksporteres til Excel.
Bemærk at mine "kolonner" i min eksport til dels kommer fra rækkerne i CustomField tabellen.