Diciamo che ho una collezione di messaggi che ha le proprietà "UserID" (int) e "Unread" (bool).In che modo è possibile scorrere su una raccolta e modificare i valori con i metodi di estensione LINQ?
Come utilizzare i metodi di estensione LINQ per impostare Unread = false, per qualsiasi messaggio nella raccolta in cui ID utente = 5?
Quindi, so che posso fare qualcosa di simile:
messages.Any(m => m.UserID == 5);
Ma, come faccio a impostare la proprietà non letto di ciascuno di quelli con un metodo di estensione così?
Nota: so che non dovrei farlo nel codice di produzione. Sto semplicemente cercando di imparare un po 'di LINQ-fu.
C'è qualche motivo per cui non è possibile utilizzare un normale per-ogni iterazione sulla raccolta filtrata? – helios
@elios, no. Questo non è un codice di produzione. Mi sto solo divertendo ed ero curioso di poter iterare sugli articoli usando LINQ – KingNestor
Solo per convenzione e sanità pubblica, chiamalo letto, non letto. se (m.Read) è molto più facile da capire rispetto a (! m.Unread). –