Compartir a través de


ExecutionStrategyExtensions.ExecuteInTransactionAsync Método

Definición

Sobrecargas

ExecuteInTransactionAsync(IExecutionStrategy, Func<Task>, Func<Task<Boolean>>)

Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

ExecuteInTransactionAsync(IExecutionStrategy, Func<CancellationToken,Task>, Func<CancellationToken,Task<Boolean>>, CancellationToken)

Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

ExecuteInTransactionAsync<TResult>(IExecutionStrategy, Func<CancellationToken, Task<TResult>>, Func<CancellationToken,Task<Boolean>>, CancellationToken)

Ejecuta la operación asincrónica especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<Boolean>>, TState, DbContext, CancellationToken)

Ejecuta la operación asincrónica especificada y devuelve el resultado.

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, CancellationToken)

Ejecuta la operación asincrónica especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, Func<DbContext,CancellationToken, Task<IDbContextTransaction>>, CancellationToken)

Ejecuta la operación asincrónica especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, CancellationToken)

Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

ExecuteInTransactionAsync(IExecutionStrategy, Func<Task>, Func<Task<Boolean>>)

Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

public static System.Threading.Tasks.Task ExecuteInTransactionAsync (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<System.Threading.Tasks.Task> operation, Func<System.Threading.Tasks.Task<bool>> verifySucceeded);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.Tasks.Task> * Func<System.Threading.Tasks.Task<bool>> -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteInTransactionAsync (strategy As IExecutionStrategy, operation As Func(Of Task), verifySucceeded As Func(Of Task(Of Boolean))) As Task

Parámetros

strategy
IExecutionStrategy

Estrategia que se usará para la ejecución.

operation
Func<Task>

Función que devuelve una tarea iniciada.

verifySucceeded
Func<Task<Boolean>>

Delegado que comprueba si la operación se realizó correctamente aunque se produjo una excepción cuando se confirmaba la transacción.

Devoluciones

Tarea que se ejecutará hasta la finalización si la tarea original se completa correctamente (la primera vez o después de reintentar errores transitorios). Si se produce un error en la tarea con un error no transitorio o se alcanza el límite de reintento, se producirá un error en la tarea devuelta y se observará la excepción.

Excepciones

La operación no se ha realizado correctamente después del número configurado de reintentos.

Comentarios

Consulte Resistencia de conexión y reintentos de base de datos para obtener más información y ejemplos.

Se aplica a

ExecuteInTransactionAsync(IExecutionStrategy, Func<CancellationToken,Task>, Func<CancellationToken,Task<Boolean>>, CancellationToken)

Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

public static System.Threading.Tasks.Task ExecuteInTransactionAsync (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task> operation, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task> * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteInTransactionAsync (strategy As IExecutionStrategy, operation As Func(Of CancellationToken, Task), verifySucceeded As Func(Of CancellationToken, Task(Of Boolean)), Optional cancellationToken As CancellationToken = Nothing) As Task

Parámetros

strategy
IExecutionStrategy

Estrategia que se usará para la ejecución.

operation
Func<CancellationToken,Task>

Función que devuelve una tarea iniciada.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Delegado que comprueba si la operación se realizó correctamente aunque se produjo una excepción cuando se confirmaba la transacción.

cancellationToken
CancellationToken

Token de cancelación usado para cancelar la operación de reintento, pero no las operaciones que ya están en curso o que ya se han completado correctamente.

Devoluciones

Tarea que se ejecutará hasta la finalización si la tarea original se completa correctamente (la primera vez o después de reintentar errores transitorios). Si se produce un error en la tarea con un error no transitorio o se alcanza el límite de reintento, se producirá un error en la tarea devuelta y se observará la excepción.

Excepciones

La operación no se ha realizado correctamente después del número configurado de reintentos.

Comentarios

Consulte Resistencia de conexión y reintentos de base de datos para obtener más información y ejemplos.

Se aplica a

ExecuteInTransactionAsync<TResult>(IExecutionStrategy, Func<CancellationToken, Task<TResult>>, Func<CancellationToken,Task<Boolean>>, CancellationToken)

Ejecuta la operación asincrónica especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

public static System.Threading.Tasks.Task<TResult> ExecuteInTransactionAsync<TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteInTransactionAsync(Of TResult) (strategy As IExecutionStrategy, operation As Func(Of CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of CancellationToken, Task(Of Boolean)), Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)

Parámetros de tipo

TResult

Tipo de resultado del Task<TResult> devuelto por operation.

Parámetros

strategy
IExecutionStrategy

Estrategia que se usará para la ejecución.

operation
Func<CancellationToken,Task<TResult>>

Función que devuelve una tarea iniciada de tipo TResult.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Delegado que comprueba si la operación se realizó correctamente aunque se produjo una excepción cuando se confirmaba la transacción.

cancellationToken
CancellationToken

Token de cancelación usado para cancelar la operación de reintento, pero no las operaciones que ya están en curso o que ya se han completado correctamente.

Devoluciones

Task<TResult>

Tarea que se ejecutará hasta la finalización si la tarea original se completa correctamente (la primera vez o después de reintentar errores transitorios). Si se produce un error en la tarea con un error no transitorio o se alcanza el límite de reintento, se producirá un error en la tarea devuelta y se observará la excepción.

Excepciones

La operación no se ha realizado correctamente después del número configurado de reintentos.

Comentarios

Consulte Resistencia de conexión y reintentos de base de datos para obtener más información y ejemplos.

Se aplica a

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<Boolean>>, TState, DbContext, CancellationToken)

Ejecuta la operación asincrónica especificada y devuelve el resultado.

public static System.Threading.Tasks.Task<TResult> ExecuteInTransactionAsync<TState,TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, TState state, Microsoft.EntityFrameworkCore.DbContext context, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * 'State * Microsoft.EntityFrameworkCore.DbContext * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteInTransactionAsync(Of TState, TResult) (strategy As IExecutionStrategy, operation As Func(Of TState, CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of TState, CancellationToken, Task(Of Boolean)), state As TState, context As DbContext, Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)

Parámetros de tipo

TState

Tipo del estado.

TResult

Tipo de resultado del Task<TResult> devuelto por operation.

Parámetros

strategy
IExecutionStrategy

Estrategia que se usará para la ejecución.

operation
Func<TState,CancellationToken,Task<TResult>>

Función que devuelve una tarea iniciada de tipo TResult.

verifySucceeded
Func<TState,CancellationToken,Task<Boolean>>

Delegado que comprueba si la operación se realizó correctamente aunque se produjo una excepción cuando se confirmaba la transacción.

state
TState

Estado que se pasará a la operación.

context
DbContext

Contexto que se usará para iniciar la transacción.

cancellationToken
CancellationToken

Token de cancelación usado para cancelar la operación de reintento, pero no las operaciones que ya están en curso o que ya se han completado correctamente.

Devoluciones

Task<TResult>

Tarea que se ejecutará hasta la finalización si la tarea original se completa correctamente (la primera vez o después de reintentar errores transitorios). Si se produce un error en la tarea con un error no transitorio o se alcanza el límite de reintento, se producirá un error en la tarea devuelta y se observará la excepción.

Excepciones

Se produce si la operación no se ha realizado correctamente después del número configurado de reintentos.

Se aplica a

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, CancellationToken)

Ejecuta la operación asincrónica especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

public static System.Threading.Tasks.Task<TResult> ExecuteInTransactionAsync<TState,TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteInTransactionAsync(Of TState, TResult) (strategy As IExecutionStrategy, state As TState, operation As Func(Of TState, CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of TState, CancellationToken, Task(Of Boolean)), Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)

Parámetros de tipo

TState

Tipo del estado.

TResult

Tipo de resultado del Task<TResult> devuelto por operation.

Parámetros

strategy
IExecutionStrategy

Estrategia que se usará para la ejecución.

state
TState

Estado que se pasará a la operación.

operation
Func<TState,CancellationToken,Task<TResult>>

Función que devuelve una tarea iniciada de tipo TResult.

verifySucceeded
Func<TState,CancellationToken,Task<Boolean>>

Delegado que comprueba si la operación se realizó correctamente aunque se produjo una excepción cuando se confirmaba la transacción.

cancellationToken
CancellationToken

Token de cancelación usado para cancelar la operación de reintento, pero no las operaciones que ya están en curso o que ya se han completado correctamente.

Devoluciones

Task<TResult>

Tarea que se ejecutará hasta la finalización si la tarea original se completa correctamente (la primera vez o después de reintentar errores transitorios). Si se produce un error en la tarea con un error no transitorio o se alcanza el límite de reintento, se producirá un error en la tarea devuelta y se observará la excepción.

Excepciones

La operación no se ha realizado correctamente después del número configurado de reintentos.

Comentarios

Consulte Resistencia de conexión y reintentos de base de datos para obtener más información y ejemplos.

Se aplica a

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, Func<DbContext,CancellationToken, Task<IDbContextTransaction>>, CancellationToken)

Ejecuta la operación asincrónica especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

public static System.Threading.Tasks.Task<TResult> ExecuteInTransactionAsync<TState,TResult> (Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, Func<Microsoft.EntityFrameworkCore.DbContext,System.Threading.CancellationToken,System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.IDbContextTransaction>> beginTransaction, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * Func<Microsoft.EntityFrameworkCore.DbContext, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.IDbContextTransaction>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Public Function ExecuteInTransactionAsync(Of TState, TResult) (strategy As IExecutionStrategy, state As TState, operation As Func(Of TState, CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of TState, CancellationToken, Task(Of Boolean)), beginTransaction As Func(Of DbContext, CancellationToken, Task(Of IDbContextTransaction)), Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)

Parámetros de tipo

TState

Tipo del estado.

TResult

Tipo de resultado del Task<TResult> devuelto por operation.

Parámetros

strategy
IExecutionStrategy

Estrategia que se usará para la ejecución.

state
TState

Estado que se pasará a la operación.

operation
Func<TState,CancellationToken,Task<TResult>>

Función que devuelve una tarea iniciada de tipo TResult.

verifySucceeded
Func<TState,CancellationToken,Task<Boolean>>

Delegado que comprueba si la operación se realizó correctamente aunque se produjo una excepción cuando se confirmaba la transacción.

beginTransaction
Func<DbContext,CancellationToken,Task<IDbContextTransaction>>

Delegado que inicia una transacción mediante el contexto especificado.

cancellationToken
CancellationToken

Token de cancelación usado para cancelar la operación de reintento, pero no las operaciones que ya están en curso o que ya se han completado correctamente.

Devoluciones

Task<TResult>

Tarea que se ejecutará hasta la finalización si la tarea original se completa correctamente (la primera vez o después de reintentar errores transitorios). Si se produce un error en la tarea con un error no transitorio o se alcanza el límite de reintento, se producirá un error en la tarea devuelta y se observará la excepción.

Excepciones

La operación no se ha realizado correctamente después del número configurado de reintentos.

Comentarios

Consulte Resistencia de conexión y reintentos de base de datos para obtener más información y ejemplos.

Se aplica a

ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, CancellationToken)

Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación.

public static System.Threading.Tasks.Task ExecuteInTransactionAsync<TState> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteInTransactionAsync(Of TState) (strategy As IExecutionStrategy, state As TState, operation As Func(Of TState, CancellationToken, Task), verifySucceeded As Func(Of TState, CancellationToken, Task(Of Boolean)), Optional cancellationToken As CancellationToken = Nothing) As Task

Parámetros de tipo

TState

Tipo del estado.

Parámetros

strategy
IExecutionStrategy

Estrategia que se usará para la ejecución.

state
TState

Estado que se pasará a la operación.

operation
Func<TState,CancellationToken,Task>

Función que devuelve una tarea iniciada.

verifySucceeded
Func<TState,CancellationToken,Task<Boolean>>

Delegado que comprueba si la operación se realizó correctamente aunque se produjo una excepción cuando se confirmaba la transacción.

cancellationToken
CancellationToken

Token de cancelación usado para cancelar la operación de reintento, pero no las operaciones que ya están en curso o que ya se han completado correctamente.

Devoluciones

Tarea que se ejecutará hasta la finalización si la tarea original se completa correctamente (la primera vez o después de reintentar errores transitorios). Si se produce un error en la tarea con un error no transitorio o se alcanza el límite de reintento, se producirá un error en la tarea devuelta y se observará la excepción.

Excepciones

La operación no se ha realizado correctamente después del número configurado de reintentos.

Comentarios

Consulte Resistencia de conexión y reintentos de base de datos para obtener más información y ejemplos.

Se aplica a