web-dev-qa-db-fra.com

Multi-line foreach boucle à Linq / Lambda

Je cherche un moyen de changer le code suivant:

foreach (Contact _contact in contacts)
{
    _contact.ID = 0;
    _contact.GroupID = 0;
    _contact.CompanyID = 0;
}

Je voudrais changer cela en utilisant Linq/Lambda en quelque chose de similaire à:

contacts.ForEach(c => c.ID = 0; c.GroupID = 0; c.CompanyID = 0);

Cependant cela ne fonctionne pas. Y a-t-il un moyen de faire plusieurs lignes dans une LINQ foreach autre que en écrivant une fonction pour le faire en une seule ligne?

38
Seph
contacts.ForEach(c => { c.ID = 0; c.GroupID = 0; c.CompanyID = 0; });

Il n'a rien à voir avec Linq en soi; C'est juste une simple méthode anonyme écrite dans la syntaxe de Lambda passée à la List<T>.ForEach Fonction (qui existait depuis 2,0, avant Linq).

65
Mehrdad Afshari