Intento evolucionar mi comprensión de los efectos secundarios y cómo deben controlarse y aplicarse.Paradigmas de C#: Efectos secundarios en las listas
En la siguiente lista de vuelos, quiero establecer una propiedad de cada vuelo satisfacer una condiciones:
IEnumerable<FlightResults> fResults = getResultsFromProvider();
//Set all non-stop flights description
fResults.Where(flight => flight.NonStop)
.Select(flight => flight.Description = "Fly Direct!");
En esta expresión, que tiene un efecto secundario en mi lista. De mi conocimiento limitado lo sé por ej. "LINQ solo se utiliza para consultas " y "Hay solo unas pocas operaciones en las listas y asignando o establecer valores no es uno de ellos" y "las listas deben ser inmutables".
- ¿Qué problema hay en mi declaración de LINQ anterior y cómo se debe cambiar?
- ¿Dónde puedo obtener más información sobre paradigmas fundamentales en el escenario que he descrito anteriormente?
Utilice un bucle "foreach" para inducir un efecto secundario.La selección es para proyección, no para actualización. Es por eso que se llama "Seleccionar" y no "Actualizar". –
pregunta relacionada aquí http://stackoverflow.com/questions/5632222/linq-side-effects – nawfal