Hat jemand gute Informationen über die Verwendung der .SaveChanges () -Methode?
Beim Versuch, die Methode .SaveChanges () für mein Datenkontextobjekt zu verwenden, treten verschiedene Probleme auf. Ich nehme Daten aus einer vorhandenen Datenquelle, erstelle die entsprechenden EntityFramework / DataService-Objekte, befülle diese erstellten Objekte mit Daten, füge diese Objekte dem Kontext hinzu und speichere diese Daten durch Aufruf von .SaveChanges.
Die Szenarien, die ich entwickelt habe (und die damit verbundenen Probleme) sind so ... In jedem Szenario habe ich eine foreach-Schleife, die Daten aus Zeilen in einer DataTable aufnimmt und die Objekte erzeugt, an die sie angehängt werden der Kontext wie sie gehen. (Hinweis: drei Objekte ein "Mitglied" und zwei "Adressen", die über einen SetLink-Aufruf angehängt werden) - im Grunde ist dies ein Konvertierungstool, um Daten aus einem Datenspeicher in einen von Data Services bereitgestellten Datenspeicher zu übertragen.
Was ist die bevorzugte Methode zum Aufrufen von .SaveChanges () von einem Client-Objekt, wenn eine große Datenmenge wie diese geladen wird? Gibt es etwas, über das ich nicht weiß, wie .SaveChanges () funktioniert? Kann jemand mehr Details zur Verfügung stellen, wie diese Funktion einmal genutzt werden sollte und welche (wenn überhaupt) Einschränkungen beim Speichern von Daten über Data Services bestehen? Gibt es Best Practices für den Methodenaufruf .SaveChanges ()? Gibt es eine besonders gute Dokumentation zum Methodenaufruf .SaveChanges ()?
Ich habe keine große Erfahrung in der Verwendung von EntityFramework (nur ein zufälliges Experiment), haben Sie versucht, .SaveChanges () alle n Iterationen aufzurufen?
Ich meine so etwas:
%Vor%Ich weiß, es ist hässlich, aber es ist die erste mögliche Lösung, die ich mir ausgedacht habe.
Ich verwende EntityFramework auch für ein kleines Projekt, daher bin ich auch sehr an der Frage interessiert. Zwei kurze Fragen: Haben Sie versucht, das Caching der Datenobjekte im Datenkontext abzuwenden? Haben Sie versucht, den Datenkontext zu schließen und während der Schleife einen neuen erstellt, um Speicher freizugeben?
Grüße
Kenneth
Tags und Links entity-framework wcf-data-services savechanges