Frage

Wenn Daten mithilfe von Linq zu manipulieren, wie oft tut den SubmitChanges () -Methode aufgerufen werden muß?

In meinem Projekt gibt es ein paar Tische mit Fremdschlüssel verknüpft. Bei der Schaffung SQL werden diese Fremdschlüssel beschränkt, so ein Rekord, der Teil einer Beziehung ist, kann nicht ohne den abhängigen Datensätze gelöscht werden zuerst gelöscht werden.

Daher gibt es eine bestimmte Reihenfolge dass Datensätze innerhalb einer Beziehung müssen gelöscht werden. Werde ich jeden Datensatz zu löschen, und eine SubmitChanges () Funktion in der Datenbank jedes Mal ausführen, oder kann ich alle Löschungen in einem Rutsch durchführen?

EDIT: Meine Hauptfrage ist: die Datensätze erhalte auf SubmitChanges gelöscht () in der gleichen Reihenfolge, wie Sie sie in Code löschen

War es hilfreich?

Lösung

Sie sollten versuchen, es so wenig wie möglich nennen, aber es ist ein bekanntes Problem mit Linq2SQL, wenn Sie Einsatz und Löschungen haben, die effektiv eine Einheit ersetzt. In diesen Fällen ist es am besten, es so schnell wie möglich rufen nach dem Lösch- und anschließendem Einsatz.

Hier ist eine ähnliche Frage ich fragte eine Weile zurück.

Andere Tipps

Wenn Sie als Batch löschen müssen, z.B. eine einzelne Transaktion, sollten Sie nur die SubmitChanges Methode einmal aufrufen, wenn Sie alle Objekte gelöscht werden markiert haben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top