Procedure: Opgeven wanneer gelijktijdigheidsonderzondering wordt gegenereerd
In LINQ naar SQL wordt een ChangeConflictException uitzondering gegenereerd wanneer objecten niet worden bijgewerkt vanwege optimistische gelijktijdigheidsconflicten. Zie Optimistische gelijktijdigheid voor meer informatie: Overzicht.
Voordat u de wijzigingen in de database indient, kunt u opgeven wanneer gelijktijdigheidsonderzondering moet worden gegenereerd:
Gooi de uitzondering bij de eerste fout (FailOnFirstConflict).
Voltooi alle update-pogingen, verzamel alle fouten en meld de samengevoegde fouten in de uitzondering (ContinueOnConflict).
Wanneer deze wordt gegenereerd, biedt de ChangeConflictException uitzondering toegang tot een ChangeConflictCollection verzameling. Deze verzameling bevat details voor elk conflict (toegewezen aan één mislukte update), inclusief toegang tot de MemberConflicts verzameling. Elk lidconflict wordt toegewezen aan één lid in de update waarvoor de gelijktijdigheidscontrole is mislukt.
Opmerking
In de volgende code ziet u voorbeelden van beide waarden.
Northwnd db = new Northwnd("...");
// Create, update, delete code.
db.SubmitChanges(ConflictMode.FailOnFirstConflict);
// or
db.SubmitChanges(ConflictMode.ContinueOnConflict);
Dim db As New Northwnd("...")
' Create, update, delete code.
db.SubmitChanges(ConflictMode.FailOnFirstConflict)
' or
db.SubmitChanges(ConflictMode.ContinueOnConflict)