SaveChangesInterceptor.ThrowingConcurrencyExceptionAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在 EF 将引发 DbUpdateConcurrencyException之前立即调用 。
public virtual System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult> ThrowingConcurrencyExceptionAsync (Microsoft.EntityFrameworkCore.Diagnostics.ConcurrencyExceptionEventData eventData, Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult result, System.Threading.CancellationToken cancellationToken = default);
abstract member ThrowingConcurrencyExceptionAsync : Microsoft.EntityFrameworkCore.Diagnostics.ConcurrencyExceptionEventData * Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult>
override this.ThrowingConcurrencyExceptionAsync : Microsoft.EntityFrameworkCore.Diagnostics.ConcurrencyExceptionEventData * Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult>
Public Overridable Function ThrowingConcurrencyExceptionAsync (eventData As ConcurrencyExceptionEventData, result As InterceptionResult, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of InterceptionResult)
参数
- eventData
- ConcurrencyExceptionEventData
有关并发冲突的上下文信息。
- result
- InterceptionResult
表示当前结果(如果存在)。
如果某个以前的侦听器通过调用 Suppress()来禁止执行,则此值已IsSuppressed设置为 true
。
此值通常用作此方法实现的返回值。
- cancellationToken
- CancellationToken
等待 CancellationToken 任务完成时要观察的 。
返回
如果 IsSuppressed 为 false
,则 EF 将引发异常。
如果 IsSuppressed 为 true
,则 EF 不会引发异常。
对于任何不尝试取消设置属性值的侦听器,此方法的实现都必须返回 result
传入的值。