60 votes

ToList(). ForEach à Linq

Je suis nouveau à Linq.

Je veux définir deux valeurs dans `` une instruction comme celle-ci

Mon code actuel est le même

Peu de refactorisation transforme ce qui précède en ceci

Mais je veux quelque chose comme ça

24voto

Charles Graham Points 899

Comme xanatos l’a dit, il s’agit d’une mauvaise utilisation de ForEach.

Si vous allez utiliser linq pour gérer cela, je le ferais comme ceci:

Cependant, l’approche Loop est plus lisible et donc plus facile à maintenir.

14voto

artwl Points 1152
employees.ToList().ForEach(
     emp=>
     {
          collection.AddRange(emp.Departments);
          emp.Departments.ToList().ForEach(u=>u.SomeProperty = null);
     });

5voto

Ilian Pinzon Points 2125

Essaye ça:

 foreach (var dept in employees.SelectMany(e => e.Departments))
{
   dept.SomeProperty = null;
   collection.Add(dept);
}

1voto

Saurabh Points 47
<pre><code></code><p>Notez que j’ai utilisé des points-virgules après chaque instruction set qui est --><br></p><pre><code></code></pre><p>J’espère que cela résoudra certainement votre problème.</p></pre>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X