I'm working on a C# application, having SQL-Server as database technology, and Telerik.OpenAccess as ORM.
Regularly, my customer sees the following `Exception` message:
Telerik.OpenAccess.OpenAccessException: Change operation canceled by user.
In order to investigate what causes this problem, I have restored the backup of the database, together with its transaction logs.
In there I have been looking for `
LOP_ABORT_XACT` in the `Operation` column, but I don't find it.
Neither do I find anything in `
EXEC xp_readerrorlog;`.
=> It's just as if there aren't any problems.
Edit6: decompiling Telerik OpenAccess DLL
After decompiling Telerik OpenAccess DLL, I have found two instances of Change operation canceled by user
:
- File "DisconnectedStateManager.cs":
private ChangeEventArgs FireChanging(
object pc,
int field,
object oldV,
object newV)
{
ChangeEventArgs ev = new ChangeEventArgs(pc, this.cmd.getFieldName(field), oldV, newV, this.state == (short) 4, true);
this.repository.tracker.FireChanging(ev);
return !ev.Cancel ? ev : throw new OpenAccessException("Change operation canceled by user.", true);
}
- File ".../SPI/TrackingImpl.cs":
/// <summary>Raises the Changing event.</summary>
/// <remarks>Not intended for application use.</remarks>
/// <param name="ev">The event to raise.</param>
public void FireChanging(ChangeEventArgs ev)
{
if (this.evChanging == null)
return;
this.evChanging(this.owner, ev);
if (ev.Cancel)
throw new OpenAccessException("Change operation canceled by user.", true);
}
Does this ring a bell with someone?
What is going on? Why do I get this error message and what can I do about it?
Thanks in advance
Dominique