Wie führe ich eine Massenaktualisierungs- / Löschabfrage in Linq durch?

Ich habe 2 Linq2Sql-Klassen:Parent undChild. Ich möchte beispielsweise alle Kinder eines Elternteils entfernen oder alle untergeordneten Datensätze aktualisieren. In SQL hätte ich geschrieben:

delete Child where ParentID = @p

oder

update Child set Val = Val+1 where ParentID = @p

Ich kann das in Linq auf die brachiale Art und Weise in der Stadt tunParent Klasse:

Children.ToList().ForEach(c => c.DeleteOnSubmit()); // DeleteOnSubmit is my own method

und

Children.ToList().ForEach(c => c.Val++);

Angesichts der inhärenten Leistungseinbußen von Linq bei ForEach-Schleifen scheint dies jedoch eine sehr ineffiziente Möglichkeit zu sein, Dinge zu tun. Gibt es eine Möglichkeit, das gewünschte Ziel zu erreichen, das genau eine Abfrage auslöst?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage