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?