ExecutionStrategyExtensions.ExecuteInTransactionAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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.
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.
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
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
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
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
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
Entity Framework