SaveChangesInterceptor.SavingChangesAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在 的 DbContext.SaveChangesAsync开头调用。
public virtual System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<int>> SavingChangesAsync (Microsoft.EntityFrameworkCore.Diagnostics.DbContextEventData eventData, Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<int> result, System.Threading.CancellationToken cancellationToken = default);
abstract member SavingChangesAsync : Microsoft.EntityFrameworkCore.Diagnostics.DbContextEventData * Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<int> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<int>>
override this.SavingChangesAsync : Microsoft.EntityFrameworkCore.Diagnostics.DbContextEventData * Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<int> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<int>>
Public Overridable Function SavingChangesAsync (eventData As DbContextEventData, result As InterceptionResult(Of Integer), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of InterceptionResult(Of Integer))
参数
- eventData
- DbContextEventData
有关正在使用的 的 DbContext 上下文信息。
- result
- InterceptionResult<Int32>
表示当前结果(如果存在)。
如果某个以前的侦听器通过调用 SuppressWithResult(TResult)来禁止执行,则此值将HasResult设置为 true
。
此值通常用作此方法实现的返回值。
- cancellationToken
- CancellationToken
等待 CancellationToken 任务完成时要观察的 。
返回
如果 HasResult 为 false,EF 将照常继续。
如果 HasResult 为 true,则 EF 将取消它要执行的操作并改为使用 Result 。
对于任何不尝试更改结果的侦听器,此方法的正常实现是返回 result
传入的值。