public override int ExecuteNativeUpdate(NativeSQLQuerySpecification nativeSQLQuerySpecification, QueryParameters queryParameters) { using (BeginProcess()) { queryParameters.ValidateParameters(); NativeSQLQueryPlan plan = GetNativeSQLQueryPlan(nativeSQLQuerySpecification); bool success = false; int result; try { result = plan.PerformExecuteUpdate(queryParameters, this); success = true; } finally { AfterOperation(success); } temporaryPersistenceContext.Clear(); return(result); } }
public override async Task <int> ExecuteNativeUpdateAsync(NativeSQLQuerySpecification nativeSQLQuerySpecification, QueryParameters queryParameters, CancellationToken cancellationToken) { cancellationToken.ThrowIfCancellationRequested(); using (BeginProcess()) { queryParameters.ValidateParameters(); NativeSQLQueryPlan plan = GetNativeSQLQueryPlan(nativeSQLQuerySpecification); bool success = false; int result; try { result = await(plan.PerformExecuteUpdateAsync(queryParameters, this, cancellationToken)).ConfigureAwait(false); success = true; } finally { await(AfterOperationAsync(success, cancellationToken)).ConfigureAwait(false); } temporaryPersistenceContext.Clear(); return(result); } }