Поделиться через


RelationalExecutionStrategyExtensions.ExecuteInTransactionAsync Метод

Определение

Перегрузки

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

Выполняет указанную асинхронную операцию в транзакции. Позволяет проверка, был ли выполнен откат транзакции при возникновении ошибки во время фиксации.

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

Выполняет указанную асинхронную операцию в транзакции. Позволяет проверка, был ли выполнен откат транзакции при возникновении ошибки во время фиксации.

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

Выполняет указанную асинхронную операцию в транзакции и возвращает результат. Позволяет проверка, был ли выполнен откат транзакции при возникновении ошибки во время фиксации.

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

Выполняет указанную асинхронную операцию и возвращает результат. Позволяет проверка, был ли выполнен откат транзакции при возникновении ошибки во время фиксации.

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

Выполняет указанную асинхронную операцию в транзакции. Позволяет проверка, был ли выполнен откат транзакции при возникновении ошибки во время фиксации.

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

Выполняет указанную асинхронную операцию в транзакции. Позволяет проверка, был ли выполнен откат транзакции при возникновении ошибки во время фиксации.

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, System.Data.IsolationLevel isolationLevel);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.Tasks.Task> * Func<System.Threading.Tasks.Task<bool>> * System.Data.IsolationLevel -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteInTransactionAsync (strategy As IExecutionStrategy, operation As Func(Of Task), verifySucceeded As Func(Of Task(Of Boolean)), isolationLevel As IsolationLevel) As Task

Параметры

strategy
IExecutionStrategy

Стратегия, которая будет использоваться для выполнения.

operation
Func<Task>

Функция, возвращающая запущенную задачу.

verifySucceeded
Func<Task<Boolean>>

Делегат, проверяющий успешность операции, несмотря на то, что при фиксации транзакции было создано исключение.

isolationLevel
IsolationLevel

Уровень изоляции для данной транзакции.

Возвращаемое значение

Задача, которая будет выполняться до завершения, если исходная задача успешно завершается (первый раз или после повторных временных сбоев). Если задача завершается сбоем с невременной ошибкой или достигнут предел повторных попыток, возвращаемая задача завершится ошибкой и должно наблюдаться исключение.

Исключения

Операция не выполнена после заданного количества повторных попыток.

Комментарии

Дополнительные сведения и примеры см. в статье Устойчивость подключения и повторные попытки базы данных .

Применяется к

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

Выполняет указанную асинхронную операцию в транзакции. Позволяет проверка, был ли выполнен откат транзакции при возникновении ошибки во время фиксации.

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.Data.IsolationLevel isolationLevel, 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.Data.IsolationLevel * 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)), isolationLevel As IsolationLevel, Optional cancellationToken As CancellationToken = Nothing) As Task

Параметры

strategy
IExecutionStrategy

Стратегия, которая будет использоваться для выполнения.

operation
Func<CancellationToken,Task>

Функция, возвращающая запущенную задачу.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Делегат, проверяющий успешность операции, несмотря на то, что при фиксации транзакции было создано исключение.

isolationLevel
IsolationLevel

Уровень изоляции для данной транзакции.

cancellationToken
CancellationToken

Маркер отмены, используемый для отмены операции повтора, но не операции, которые уже находятся в тестовом режиме или уже успешно завершены.

Возвращаемое значение

Задача, которая будет выполняться до завершения, если исходная задача успешно завершается (первый раз или после повторных временных сбоев). Если задача завершается сбоем с невременной ошибкой или достигнут предел повторных попыток, возвращаемая задача завершится ошибкой и должно наблюдаться исключение.

Исключения

Операция не выполнена после заданного количества повторных попыток.

Если CancellationToken отменяется.

Комментарии

Дополнительные сведения и примеры см. в статье Устойчивость подключения и повторные попытки базы данных .

Применяется к

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

Выполняет указанную асинхронную операцию в транзакции и возвращает результат. Позволяет проверка, был ли выполнен откат транзакции при возникновении ошибки во время фиксации.

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.Data.IsolationLevel isolationLevel, 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.Data.IsolationLevel * 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)), isolationLevel As IsolationLevel, Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)

Параметры типа

TResult

Тип результата , Task<TResult> возвращаемый operation.

Параметры

strategy
IExecutionStrategy

Стратегия, которая будет использоваться для выполнения.

operation
Func<CancellationToken,Task<TResult>>

Функция, возвращающая запущенную задачу типа TResult.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Делегат, проверяющий успешность операции, несмотря на то, что при фиксации транзакции было создано исключение.

isolationLevel
IsolationLevel

Уровень изоляции для данной транзакции.

cancellationToken
CancellationToken

Маркер отмены, используемый для отмены операции повтора, но не операции, которые уже находятся в тестовом режиме или уже успешно завершены.

Возвращаемое значение

Task<TResult>

Задача, которая будет выполняться до завершения, если исходная задача успешно завершается (первый раз или после повторных временных сбоев). Если задача завершается сбоем с невременной ошибкой или достигнут предел повторных попыток, возвращаемая задача завершится ошибкой и должно наблюдаться исключение.

Исключения

Операция не выполнена после заданного количества повторных попыток.

Если CancellationToken отменяется.

Комментарии

Дополнительные сведения и примеры см. в статье Устойчивость подключения и повторные попытки базы данных .

Применяется к

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

Выполняет указанную асинхронную операцию и возвращает результат. Позволяет проверка, был ли выполнен откат транзакции при возникновении ошибки во время фиксации.

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.Data.IsolationLevel isolationLevel, 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.Data.IsolationLevel * 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)), isolationLevel As IsolationLevel, Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)

Параметры типа

TState

Тип состояния.

TResult

Тип результата , Task<TResult> возвращаемый operation.

Параметры

strategy
IExecutionStrategy

Стратегия, которая будет использоваться для выполнения.

state
TState

Состояние, которое будет передано операции.

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

Функция, возвращающая запущенную задачу типа TResult.

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

Делегат, проверяющий успешность операции, несмотря на то, что при фиксации транзакции было создано исключение.

isolationLevel
IsolationLevel

Уровень изоляции для данной транзакции.

cancellationToken
CancellationToken

Маркер отмены, используемый для отмены операции повтора, но не операции, которые уже находятся в тестовом режиме или уже успешно завершены.

Возвращаемое значение

Task<TResult>

Задача, которая будет выполняться до завершения, если исходная задача успешно завершается (первый раз или после повторных временных сбоев). Если задача завершается сбоем с невременной ошибкой или достигнут предел повторных попыток, возвращаемая задача завершится ошибкой и должно наблюдаться исключение.

Исключения

Операция не выполнена после заданного количества повторных попыток.

Если CancellationToken отменяется.

Комментарии

Дополнительные сведения и примеры см. в статье Устойчивость подключения и повторные попытки базы данных .

Применяется к

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

Выполняет указанную асинхронную операцию в транзакции. Позволяет проверка, был ли выполнен откат транзакции при возникновении ошибки во время фиксации.

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.Data.IsolationLevel isolationLevel, 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.Data.IsolationLevel * 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)), isolationLevel As IsolationLevel, Optional cancellationToken As CancellationToken = Nothing) As Task

Параметры типа

TState

Тип состояния.

Параметры

strategy
IExecutionStrategy

Стратегия, которая будет использоваться для выполнения.

state
TState

Состояние, которое будет передано операции.

operation
Func<TState,CancellationToken,Task>

Функция, возвращающая запущенную задачу.

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

Делегат, проверяющий успешность операции, несмотря на то, что при фиксации транзакции было создано исключение.

isolationLevel
IsolationLevel

Уровень изоляции для данной транзакции.

cancellationToken
CancellationToken

Маркер отмены, используемый для отмены операции повтора, но не операции, которые уже находятся в тестовом режиме или уже успешно завершены.

Возвращаемое значение

Задача, которая будет выполняться до завершения, если исходная задача успешно завершается (первый раз или после повторных временных сбоев). Если задача завершается сбоем с невременной ошибкой или достигнут предел повторных попыток, возвращаемая задача завершится ошибкой и должно наблюдаться исключение.

Исключения

Операция не выполнена после заданного количества повторных попыток.

Если CancellationToken отменяется.

Комментарии

Дополнительные сведения и примеры см. в статье Устойчивость подключения и повторные попытки базы данных .

Применяется к