Es posible añadir if-declaración dentro de LINQ ForEach llamar?

sequence.Where(x => x.Name.ToString().Equals("Apple"))
        .ToList()
        .ForEach( /* If statement here */ );
  • La pregunta no es clara
  • No hay LINQ ForEach método. Que es un método de List.
  • ¿Qué haría usted quiere poner en la if que no puede ser utilizado como predicado en la Where?
InformationsquelleAutor abc cba | 2013-07-04

4 Comentarios

  1. 47

    puede hacer lo siguiente…

    List.Where(x => x.Name.ToString().Equals("Apple").ToList()
        .ForEach( x => { if(x.Name == ""){}} );
  2. 33

    Sí, si la instrucción se utiliza comúnmente en el interior de la ForEach de la siguiente manera:

    sequence.Where(x => x.Name.ToString().Equals("Apple"))
        .ToList()
        .ForEach( x =>
         {
           if(someCondition)
           {
             //Do some stuff here.
           }  
         });
  3. 3

    Sí, toma las expresiones lambda, así que usted puede poner cualquier validez de c# expresión de

    • Yo no diría que alguna… Hay algunas construcciones que la expresión de la API no puede representar.
    • Oh, espera lo siento, mi comentario no se aplican aquí. Estamos creando un delegado de aquí, no una expresión. Si mal no recuerdo, las mismas restricciones no afectan a los delegados, cualquier teorema puede ser utilizado.
  4. -1

    Hilo viejo, pero tirar un en mi opinión limpiador sintaxis

    foreach(var item in sequence.Where(s => s.Name.ToString() == "Apple"))
    {
     //do whatever
    }

Dejar respuesta

Please enter your comment!
Please enter your name here