¿Cuál es la forma más sucinta/simple de actualizar una sola propiedad de un elemento específico dentro de una colección usando LINQ?Consultar y actualizar una propiedad en una colección usando LINQ
Por ejemplo si tengo una lista de los siguientes:
public class Ticket
{
public string Name { get; set; }
public string Code { get; set; }
public bool Selected { get; set; }
}
¿Cómo puedo usar LINQ para actualizar la propiedad "Selected" de un artículo del boleto wheres su propiedad "Name" tiene el valor de "Beach ". En SQL sería:
UPDATE Tickets SET Selected = true WHERE Name = 'Beach'
pensé que estaba en el camino correcto con esto ...
tickets.Select(x => { x.Selected = true; return x; }).ToList().Where(x => x.Name == "Beach");
Por qué ToList()? Claro que estaba en el OP, pero probablemente sea una sobrecarga innecesaria. –
El motivo es - http://stackoverflow.com/questions/200574/linq-equivalent-of-foreach-for-ienumerablet – Stuart
'IEnumerable' no admite' .ForEach() ', por lo que es necesario. – BrokenGlass