Filtrere liste udfra access liste
Jeg sidder og skal lave en metode der kan filtrere nogle "items" udfra en given access liste. Eksempel her:Jeg har bruger som er medlem af flere "grupper" som en List<int>.
Desuden har jeg en list af f.eks. kalender-entries som har en liste af hvilke grupper der skal kunne se dem - også som en List<int>.
Jeg skitserer lige klasserne så det måske er lidt nemmere at forstå.
public class CalendarEntry
{
string subject {get;set;}
List<int> allowedGroups {get;set;}
}
Og den metode jeg så ikke helt kan finde ud af at lave er følgende:
public List<CalendarEntry> getAllowedList(List<int> memberOfGroups)
{
List<CalendarEntry> allCalendarEntries = {metode til at hente alle kalender-entries...den er selvfølgelig lavet}
List<CalendarEntry> filteredCalendarEntries = new List<CalendarEntry>();
// Det er det kode der skal stå her jeg mangler.
return filteredCalendarEntries;
}
Så funktionen skal finde de kalender-entries som indeholder mindst 1 af de accessGroups som er givet med som parameter.
Jeg kunne jo godt lave den ved at lave en masse løkker inde i hinanden som laver et tjek, men der må findes en smartere (og ikke mindst hurtigere) måde at gøre det på. Evt. med lambda-udtryk eller lignende.
Håber på lidt inspiration :)