我正在使用 Telerik OpenAccess ORM。当同一数据库记录发生并发更新时,有时会发生异常。我正在尝试捕获正在引发的异常错误:
try
{
this._dbContext.SaveChanges();
}
catch (Telerik.OpenAccess.Exceptions.OptimisticVerificationException ex)
{
Debug.WriteLine($"EXCEPTION ERROR CAUGHT: {ex}");
}
当我调试时,我可以看到异常正在 Visual Studio 输出窗口中记录:
Telerik.OpenAccess Error: 5 : Row not found: GenericOID@fd1c5f2e ORDERS ORDER_ID=12345678
UPDATE "ORDERS" SET "DEPOSIT_AMOUNT" = ? WHERE "ORDER_ID" = ? AND "DEPOSIT_AMOUNT" = ?
(set event logging to all to see parameter values)
Exception thrown: 'Telerik.OpenAccess.Exceptions.OptimisticVerificationException' in Telerik.OpenAccess.dll
但是代码不会落入catch
块中。任何想法为什么?