2017-02-13 1 views

Antwort

0

Ich habe zuerst ausgeschlossen, dass es definitiv keine Möglichkeit gab, ein anderes System oder Benutzer könnte den Datensatz "unter" meinen Code aktualisieren, der das Problem verursacht.

Ich habe dann ausgeschlossen, Datentypen und Rundung waren nicht das Problem, wie ich verstehe, dass feine Unterschiede, wie verschiedene Systeme mit der Rundung von Floats umgehen können diese Fehlermeldung gemeldet werden.

Ich ausgeschlossen dann "Nullable" Felder wurden keine Probleme verursacht.

Was sich tatsächlich herausstellte, war ein eigener Fehler in meiner gespeicherten Prozedur. Obwohl es schien, dass ich alle Daten, die ich zum Laden des typisierten Datasets benötigte, zurückgeben musste, hatte ich das Primärschlüsselfeld nicht eingeschlossen. Wenn ich also meinen Code durchging, hatte das primäre Feld den Wert "-1".

Ich nehme an, dies verursacht den Datenadapter einige Probleme. Ich bin überrascht, dass sich der Fehler als Nebenläufigkeitsfehler manifestiert. Ich hätte eine informativere Nachricht erwartet, um zu versuchen, einen Datensatz ohne einen Schlüssel zu aktualisieren, um den Datensatz zu identifizieren!

Korrektur meiner „wählen Sie für ID“ gespeicherte Prozedur des ID-Feld sowie alle der mehr interessant Felder zurück das Problem gelöst, wenn die Update Methode auf dem Adapter genannt wurde.

Verwandte Themen