Qual è il modo più semplice/più semplice per aggiornare una singola proprietà di un elemento specifico all'interno di una raccolta utilizzando LINQ?Query e aggiornamento di una proprietà in una raccolta mediante LINQ
Per esempio se ho un elenco di quanto segue:
public class Ticket
{
public string Name { get; set; }
public string Code { get; set; }
public bool Selected { get; set; }
}
Come posso utilizzare LINQ per aggiornare la proprietà "Selected" di un elemento biglietto wheres il suo "Nome" proprietà ha il valore di "Beach ". In SQL sarebbe:
UPDATE Tickets SET Selected = true WHERE Name = 'Beach'
Pensavo sulla strada giusta con questo ...
tickets.Select(x => { x.Selected = true; return x; }).ToList().Where(x => x.Name == "Beach");
Perché ToList()? Certo era nell'OP, ma probabilmente è un sovraccarico non necessario. –
Il motivo è: http://stackoverflow.com/questions/200574/linq-equivalent-of-foreach-for-ienumerablet – Stuart
'IEnumerable' non supporta' .ForEach() ', quindi è necessario. – BrokenGlass