ExecutionStrategyExtensions.ExecuteInTransactionAsync 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
오버로드
ExecuteInTransactionAsync(IExecutionStrategy, Func<Task>, Func<Task<Boolean>>)
트랜잭션에서 지정된 비동기 작업을 실행합니다. 커밋 중에 오류가 발생하는 경우 트랜잭션이 롤백되었는지 여부를 검사 수 있습니다.
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
매개 변수
- strategy
- IExecutionStrategy
실행에 사용할 전략입니다.
반환
원래 작업이 성공적으로 완료되면 완료될 작업입니다(처음 또는 일시적 오류를 다시 시도한 후). 일시적이지 않은 오류로 인해 작업이 실패하거나 재시도 제한에 도달하면 반환된 태스크에 오류가 발생하여 예외가 관찰되어야 합니다.
예외
구성된 재시도 횟수가 지나면 작업이 성공하지 못했습니다.
설명
자세한 내용 과 예제는 연결 복원력 및 데이터베이스 재시도 를 참조하세요.
적용 대상
ExecuteInTransactionAsync(IExecutionStrategy, Func<CancellationToken,Task>, Func<CancellationToken,Task<Boolean>>, 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.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
매개 변수
- strategy
- IExecutionStrategy
실행에 사용할 전략입니다.
- operation
- Func<CancellationToken,Task>
시작된 작업을 반환하는 함수입니다.
- verifySucceeded
- Func<CancellationToken,Task<Boolean>>
트랜잭션이 커밋될 때 예외가 throw된 경우에도 작업이 성공했는지 여부를 테스트하는 대리자입니다.
- cancellationToken
- CancellationToken
재시도 작업을 취소하는 데 사용되는 취소 토큰이지만 이미 진행 중이거나 이미 성공적으로 완료된 작업은 아닙니다.
반환
원래 작업이 성공적으로 완료되면 완료될 작업입니다(처음 또는 일시적 오류를 다시 시도한 후). 일시적이지 않은 오류로 인해 작업이 실패하거나 재시도 제한에 도달하면 반환된 태스크에 오류가 발생하여 예외가 관찰되어야 합니다.
예외
구성된 재시도 횟수가 지나면 작업이 성공하지 못했습니다.
설명
자세한 내용 과 예제는 연결 복원력 및 데이터베이스 재시도 를 참조하세요.
적용 대상
ExecuteInTransactionAsync<TResult>(IExecutionStrategy, Func<CancellationToken, Task<TResult>>, Func<CancellationToken,Task<Boolean>>, 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.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)
형식 매개 변수
- TResult
에서 반환operation
된 Task<TResult> 의 결과 형식입니다.
매개 변수
- strategy
- IExecutionStrategy
실행에 사용할 전략입니다.
- operation
- Func<CancellationToken,Task<TResult>>
형식 TResult
의 시작 작업을 반환하는 함수입니다.
- verifySucceeded
- Func<CancellationToken,Task<Boolean>>
트랜잭션이 커밋될 때 예외가 throw된 경우에도 작업이 성공했는지 여부를 테스트하는 대리자입니다.
- cancellationToken
- CancellationToken
재시도 작업을 취소하는 데 사용되는 취소 토큰이지만 이미 진행 중이거나 이미 성공적으로 완료된 작업은 아닙니다.
반환
원래 작업이 성공적으로 완료되면 완료될 작업입니다(처음 또는 일시적 오류를 다시 시도한 후). 일시적이지 않은 오류로 인해 작업이 실패하거나 재시도 제한에 도달하면 반환된 태스크에 오류가 발생하여 예외가 관찰되어야 합니다.
예외
구성된 재시도 횟수가 지나면 작업이 성공하지 못했습니다.
설명
자세한 내용 과 예제는 연결 복원력 및 데이터베이스 재시도 를 참조하세요.
적용 대상
ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<Boolean>>, TState, DbContext, CancellationToken)
지정된 비동기 작업을 실행하고 결과를 반환합니다.
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)
형식 매개 변수
- TState
상태의 형식입니다.
- TResult
에서 반환operation
된 Task<TResult> 의 결과 형식입니다.
매개 변수
- strategy
- IExecutionStrategy
실행에 사용할 전략입니다.
- operation
- Func<TState,CancellationToken,Task<TResult>>
형식 TResult
의 시작 작업을 반환하는 함수입니다.
- verifySucceeded
- Func<TState,CancellationToken,Task<Boolean>>
트랜잭션이 커밋될 때 예외가 throw된 경우에도 작업이 성공했는지 여부를 테스트하는 대리자입니다.
- state
- TState
작업에 전달될 상태입니다.
- context
- DbContext
트랜잭션을 시작하는 데 사용할 컨텍스트입니다.
- cancellationToken
- CancellationToken
재시도 작업을 취소하는 데 사용되는 취소 토큰이지만 이미 진행 중이거나 이미 성공적으로 완료된 작업은 아닙니다.
반환
원래 작업이 성공적으로 완료되면 완료될 작업입니다(처음 또는 일시적 오류를 다시 시도한 후). 일시적이지 않은 오류로 인해 작업이 실패하거나 재시도 제한에 도달하면 반환된 태스크에 오류가 발생하여 예외가 관찰되어야 합니다.
예외
구성된 재시도 횟수 후에 작업이 성공하지 못한 경우 throw됩니다.
적용 대상
ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, 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.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)
형식 매개 변수
- TState
상태의 형식입니다.
- TResult
에서 반환operation
된 Task<TResult> 의 결과 형식입니다.
매개 변수
- strategy
- IExecutionStrategy
실행에 사용할 전략입니다.
- state
- TState
작업에 전달될 상태입니다.
- operation
- Func<TState,CancellationToken,Task<TResult>>
형식 TResult
의 시작 작업을 반환하는 함수입니다.
- verifySucceeded
- Func<TState,CancellationToken,Task<Boolean>>
트랜잭션이 커밋될 때 예외가 throw된 경우에도 작업이 성공했는지 여부를 테스트하는 대리자입니다.
- cancellationToken
- CancellationToken
재시도 작업을 취소하는 데 사용되는 취소 토큰이지만 이미 진행 중이거나 이미 성공적으로 완료된 작업은 아닙니다.
반환
원래 작업이 성공적으로 완료되면 완료될 작업입니다(처음 또는 일시적 오류를 다시 시도한 후). 일시적이지 않은 오류로 인해 작업이 실패하거나 재시도 제한에 도달하면 반환된 태스크에 오류가 발생하여 예외가 관찰되어야 합니다.
예외
구성된 재시도 횟수가 지나면 작업이 성공하지 못했습니다.
설명
자세한 내용 과 예제는 연결 복원력 및 데이터베이스 재시도 를 참조하세요.
적용 대상
ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, Func<DbContext,CancellationToken, Task<IDbContextTransaction>>, CancellationToken)
트랜잭션에서 지정된 비동기 작업을 실행하고 결과를 반환합니다. 커밋 중에 오류가 발생하는 경우 트랜잭션이 롤백되었는지 여부를 검사 수 있습니다.
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)
형식 매개 변수
- TState
상태의 형식입니다.
- TResult
에서 반환operation
된 Task<TResult> 의 결과 형식입니다.
매개 변수
- strategy
- IExecutionStrategy
실행에 사용할 전략입니다.
- state
- TState
작업에 전달될 상태입니다.
- operation
- Func<TState,CancellationToken,Task<TResult>>
형식 TResult
의 시작 작업을 반환하는 함수입니다.
- verifySucceeded
- Func<TState,CancellationToken,Task<Boolean>>
트랜잭션이 커밋될 때 예외가 throw된 경우에도 작업이 성공했는지 여부를 테스트하는 대리자입니다.
- beginTransaction
- Func<DbContext,CancellationToken,Task<IDbContextTransaction>>
지정된 컨텍스트를 사용하여 트랜잭션을 시작하는 대리자입니다.
- cancellationToken
- CancellationToken
재시도 작업을 취소하는 데 사용되는 취소 토큰이지만 이미 진행 중이거나 이미 성공적으로 완료된 작업은 아닙니다.
반환
원래 작업이 성공적으로 완료되면 완료될 작업입니다(처음 또는 일시적 오류를 다시 시도한 후). 일시적이지 않은 오류로 인해 작업이 실패하거나 재시도 제한에 도달하면 반환된 태스크에 오류가 발생하여 예외가 관찰되어야 합니다.
예외
구성된 재시도 횟수가 지나면 작업이 성공하지 못했습니다.
설명
자세한 내용 과 예제는 연결 복원력 및 데이터베이스 재시도 를 참조하세요.
적용 대상
ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, 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.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
형식 매개 변수
- TState
상태의 형식입니다.
매개 변수
- strategy
- IExecutionStrategy
실행에 사용할 전략입니다.
- state
- TState
작업에 전달될 상태입니다.
- operation
- Func<TState,CancellationToken,Task>
시작된 작업을 반환하는 함수입니다.
- verifySucceeded
- Func<TState,CancellationToken,Task<Boolean>>
트랜잭션이 커밋될 때 예외가 throw된 경우에도 작업이 성공했는지 여부를 테스트하는 대리자입니다.
- cancellationToken
- CancellationToken
재시도 작업을 취소하는 데 사용되는 취소 토큰이지만 이미 진행 중이거나 이미 성공적으로 완료된 작업은 아닙니다.
반환
원래 작업이 성공적으로 완료되면 완료될 때까지 실행되는 작업입니다(처음 또는 일시적 오류를 다시 시도한 후). 일시적이지 않은 오류로 인해 작업이 실패하거나 재시도 제한에 도달하면 반환된 태스크에 오류가 발생하여 예외가 관찰되어야 합니다.
예외
구성된 재시도 횟수가 지나면 작업이 성공하지 못했습니다.
설명
자세한 내용 과 예제는 연결 복원력 및 데이터베이스 재시 도를 참조하세요.
적용 대상
Entity Framework