J'ai une collection de vidéos qui ont un identificateur de type de champ qui me dit si une vidéo est une bande-annonce, un clip ou une interview.Linq sélectionner dans la liste où la propriété correspond à une condition
Je dois les mettre dans 3 collections séparées.
var trailers = myMediaObject.Videos.Where(type => type.TypeIdentifier == 1);
var clips = myMediaObject.Videos.Where(type => type.TypeIdentifier == 2);
var interviews = myMediaObject.Videos.Where(type => type.TypeIdentifier == 3);
Existe-t-il un moyen plus efficace de le faire? J'adore utiliser Linq ici.
Je n'ai pas besoin d'exécution différée aujourd'hui (cela pourrait changer dans le futur, donc merci pour le GroupBy). Je voudrais pouvoir faire ce var (bandes-annonces, clips, interviews) = myMediaObject.Videos.ToLookup (type => type.TypeIdentifier); – halivingston
J'aime 'ToLookup'. Méthode très négligée. – leppie
@halvingston: Est-ce vraiment un problème d'avoir quatre instructions à la place? Gardez à l'esprit que vous devez être en mesure de spécifier la partie 1, 2, 3 quelque part aussi ... –