Aktualisieren von Datensätzen mit Entity Framework 6
Dieser Artikel befasst sich mit der Herausforderung der Aktualisierung von Datensätzen mit Entity Framework 6. Der bereitgestellte Code ruft den Datensatz ab aktualisiert werden und versucht, es an den Kontext anzuhängen, bevor es seinen Status auf „Geändert“ setzt und die Änderungen speichert. Es ist jedoch ein Fehler aufgetreten, der darauf hinweist, dass eine unerwartete Anzahl von Zeilen betroffen war.
Die Lösung
Der Fehler deutet darauf hin, dass der Datensatz, den Sie aktualisieren möchten, dies möglicherweise getan hat wurde geändert, seit Sie es abgerufen haben. Um dieses Problem zu beheben, sollten Sie das Objekt direkt aus dem Datenbankkontext abrufen und dann vor dem Speichern die erforderlichen Änderungen vornehmen.
Hier ist eine überarbeitete Version des Codes:
using (var db = new MyContextDB()) { var result = db.Books.SingleOrDefault(b => b.BookNumber == bookNumber); if (result != null) { result.BookName = _book.BookName;
Das obige ist der detaillierte Inhalt vonWarum führt das Aktualisieren von Datensätzen mit Entity Framework 6 manchmal zu einer „unerwarteten Anzahl betroffener Zeilen'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!