Share via


ExecutionStrategyExtensions.ExecuteInTransactionAsync Método

Definição

Sobrecargas

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

Executa a operação assíncrona especificada em uma transação. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

Executa a operação assíncrona especificada em uma transação. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

Executa a operação assíncrona especificada em uma transação e retorna o resultado. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

Executa a operação assíncrona especificada e retorna o resultado.

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

Executa a operação assíncrona especificada em uma transação e retorna o resultado. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

Executa a operação assíncrona especificada em uma transação e retorna o resultado. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

Executa a operação assíncrona especificada em uma transação. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

Executa a operação assíncrona especificada em uma transação. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

A estratégia que será usada para a execução.

operation
Func<Task>

Uma função que retorna uma tarefa iniciada.

verifySucceeded
Func<Task<Boolean>>

Um delegado que testa se a operação foi bem-sucedida mesmo que uma exceção tenha sido gerada quando a transação estava sendo confirmada.

Retornos

Uma tarefa que será executada até a conclusão se a tarefa original for concluída com êxito (na primeira vez ou depois de tentar novamente falhas transitórias). Se a tarefa falhar com um erro não transitório ou o limite de repetição for atingido, a tarefa retornada ficará com falha e a exceção deverá ser observada.

Exceções

A operação não foi bem-sucedida após o número configurado de novas tentativas.

Comentários

Consulte Resiliência de conexão e repetições de banco de dados para obter mais informações e exemplos.

Aplica-se a

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

Executa a operação assíncrona especificada em uma transação. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

A estratégia que será usada para a execução.

operation
Func<CancellationToken,Task>

Uma função que retorna uma tarefa iniciada.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Um delegado que testa se a operação foi bem-sucedida mesmo que uma exceção tenha sido gerada quando a transação estava sendo confirmada.

cancellationToken
CancellationToken

Um token de cancelamento usado para cancelar a operação de repetição, mas não operações que já estão em versão de pré-lançamento ou que já foram concluídas com êxito.

Retornos

Uma tarefa que será executada até a conclusão se a tarefa original for concluída com êxito (na primeira vez ou depois de tentar novamente falhas transitórias). Se a tarefa falhar com um erro não transitório ou o limite de repetição for atingido, a tarefa retornada ficará com falha e a exceção deverá ser observada.

Exceções

A operação não foi bem-sucedida após o número configurado de novas tentativas.

Se o padrão CancellationToken for cancelado.

Comentários

Consulte Resiliência de conexão e repetições de banco de dados para obter mais informações e exemplos.

Aplica-se a

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

Executa a operação assíncrona especificada em uma transação e retorna o resultado. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

O tipo de resultado do Task<TResult> retornado por operation.

Parâmetros

strategy
IExecutionStrategy

A estratégia que será usada para a execução.

operation
Func<CancellationToken,Task<TResult>>

Uma função que retorna uma tarefa iniciada do tipo TResult.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Um delegado que testa se a operação foi bem-sucedida mesmo que uma exceção tenha sido gerada quando a transação estava sendo confirmada.

cancellationToken
CancellationToken

Um token de cancelamento usado para cancelar a operação de repetição, mas não operações que já estão em versão de pré-lançamento ou que já foram concluídas com êxito.

Retornos

Task<TResult>

Uma tarefa que será executada até a conclusão se a tarefa original for concluída com êxito (na primeira vez ou depois de tentar novamente falhas transitórias). Se a tarefa falhar com um erro não transitório ou o limite de repetição for atingido, a tarefa retornada ficará com falha e a exceção deverá ser observada.

Exceções

A operação não foi bem-sucedida após o número configurado de novas tentativas.

Se o padrão CancellationToken for cancelado.

Comentários

Consulte Resiliência de conexão e repetições de banco de dados para obter mais informações e exemplos.

Aplica-se a

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

Executa a operação assíncrona especificada e retorna o 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

O tipo do estado.

TResult

O tipo de resultado do Task<TResult> retornado por operation.

Parâmetros

strategy
IExecutionStrategy

A estratégia que será usada para a execução.

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

Uma função que retorna uma tarefa iniciada do tipo TResult.

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

Um delegado que testa se a operação foi bem-sucedida mesmo que uma exceção tenha sido gerada quando a transação estava sendo confirmada.

state
TState

O estado que será passado para a operação.

context
DbContext

O contexto que será usado para iniciar a transação.

cancellationToken
CancellationToken

Um token de cancelamento usado para cancelar a operação de repetição, mas não operações que já estão em versão de pré-lançamento ou que já foram concluídas com êxito.

Retornos

Task<TResult>

Uma tarefa que será executada até a conclusão se a tarefa original for concluída com êxito (na primeira vez ou depois de tentar novamente falhas transitórias). Se a tarefa falhar com um erro não transitório ou o limite de repetição for atingido, a tarefa retornada ficará com falha e a exceção deverá ser observada.

Exceções

Gerada se a operação não tiver sido bem-sucedida após o número configurado de repetições.

Aplica-se a

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

Executa a operação assíncrona especificada em uma transação e retorna o resultado. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

O tipo do estado.

TResult

O tipo de resultado do Task<TResult> retornado por operation.

Parâmetros

strategy
IExecutionStrategy

A estratégia que será usada para a execução.

state
TState

O estado que será passado para a operação.

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

Uma função que retorna uma tarefa iniciada do tipo TResult.

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

Um delegado que testa se a operação foi bem-sucedida mesmo que uma exceção tenha sido gerada quando a transação estava sendo confirmada.

cancellationToken
CancellationToken

Um token de cancelamento usado para cancelar a operação de repetição, mas não operações que já estão em versão de pré-lançamento ou que já foram concluídas com êxito.

Retornos

Task<TResult>

Uma tarefa que será executada até a conclusão se a tarefa original for concluída com êxito (na primeira vez ou depois de tentar novamente falhas transitórias). Se a tarefa falhar com um erro não transitório ou o limite de repetição for atingido, a tarefa retornada ficará com falha e a exceção deverá ser observada.

Exceções

A operação não foi bem-sucedida após o número configurado de novas tentativas.

Se o padrão CancellationToken for cancelado.

Comentários

Consulte Resiliência de conexão e repetições de banco de dados para obter mais informações e exemplos.

Aplica-se a

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

Executa a operação assíncrona especificada em uma transação e retorna o resultado. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

O tipo do estado.

TResult

O tipo de resultado do Task<TResult> retornado por operation.

Parâmetros

strategy
IExecutionStrategy

A estratégia que será usada para a execução.

state
TState

O estado que será passado para a operação.

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

Uma função que retorna uma tarefa iniciada do tipo TResult.

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

Um delegado que testa se a operação foi bem-sucedida mesmo que uma exceção tenha sido gerada quando a transação estava sendo confirmada.

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

Um delegado que inicia uma transação usando o contexto fornecido.

cancellationToken
CancellationToken

Um token de cancelamento usado para cancelar a operação de repetição, mas não operações que já estão em versão de pré-lançamento ou que já foram concluídas com êxito.

Retornos

Task<TResult>

Uma tarefa que será executada até a conclusão se a tarefa original for concluída com êxito (na primeira vez ou depois de tentar novamente falhas transitórias). Se a tarefa falhar com um erro não transitório ou o limite de repetição for atingido, a tarefa retornada ficará com falha e a exceção deverá ser observada.

Exceções

A operação não foi bem-sucedida após o número configurado de novas tentativas.

Se o padrão CancellationToken for cancelado.

Comentários

Consulte Resiliência de conexão e repetições de banco de dados para obter mais informações e exemplos.

Aplica-se a

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

Executa a operação assíncrona especificada em uma transação. Permite marcar se a transação foi revertida se ocorrer um erro durante a confirmação.

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

O tipo do estado.

Parâmetros

strategy
IExecutionStrategy

A estratégia que será usada para a execução.

state
TState

O estado que será passado para a operação.

operation
Func<TState,CancellationToken,Task>

Uma função que retorna uma tarefa iniciada.

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

Um delegado que testa se a operação foi bem-sucedida mesmo que uma exceção tenha sido gerada quando a transação estava sendo confirmada.

cancellationToken
CancellationToken

Um token de cancelamento usado para cancelar a operação de repetição, mas não operações que já estão em versão de pré-lançamento ou que já foram concluídas com êxito.

Retornos

Uma tarefa que será executada até a conclusão se a tarefa original for concluída com êxito (na primeira vez ou depois de tentar novamente falhas transitórias). Se a tarefa falhar com um erro não transitório ou o limite de repetição for atingido, a tarefa retornada ficará com falha e a exceção deverá ser observada.

Exceções

A operação não foi bem-sucedida após o número configurado de novas tentativas.

Se o padrão CancellationToken for cancelado.

Comentários

Consulte Resiliência de conexão e repetições de banco de dados para obter mais informações e exemplos.

Aplica-se a