Freigeben über


ExecutionStrategyExtensions.ExecuteInTransactionAsync Methode

Definition

Überlädt

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

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus und gibt das Ergebnis zurück. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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

Führt den angegebenen asynchronen Vorgang aus und gibt das Ergebnis zurück.

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

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus und gibt das Ergebnis zurück. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus und gibt das Ergebnis zurück. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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

Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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

Parameter

strategy
IExecutionStrategy

Die Strategie, die für die Ausführung verwendet wird.

operation
Func<Task>

Eine Funktion, die eine gestartete Aufgabe zurückgibt.

verifySucceeded
Func<Task<Boolean>>

Ein Delegat, der testet, ob der Vorgang erfolgreich war, obwohl beim Commit für die Transaktion eine Ausnahme ausgelöst wurde.

Gibt zurück

Eine Aufgabe, die bis zum Abschluss ausgeführt wird, wenn die ursprüngliche Aufgabe erfolgreich abgeschlossen wird (entweder beim ersten Mal oder nach dem Wiederholen vorübergehender Fehler). Wenn der Vorgang mit einem nicht vorübergehenden Fehler fehlschlägt oder das Wiederholungslimit erreicht ist, wird der zurückgegebene Vorgang fehlerhaft, und die Ausnahme muss beachtet werden.

Ausnahmen

Der Vorgang ist nach der konfigurierten Anzahl von Wiederholungen nicht erfolgreich.

Hinweise

Weitere Informationen und Beispiele finden Sie unter Verbindungsresilienz und Datenbank-Wiederholungen .

Gilt für:

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

Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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

Parameter

strategy
IExecutionStrategy

Die Strategie, die für die Ausführung verwendet wird.

operation
Func<CancellationToken,Task>

Eine Funktion, die eine gestartete Aufgabe zurückgibt.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Ein Delegat, der testet, ob der Vorgang erfolgreich war, obwohl beim Commit für die Transaktion eine Ausnahme ausgelöst wurde.

cancellationToken
CancellationToken

Ein Abbruchtoken, das zum Abbrechen des Wiederholungsvorgangs verwendet wird, aber keine Vorgänge, die sich bereits im Flug befinden oder die bereits erfolgreich abgeschlossen wurden.

Gibt zurück

Eine Aufgabe, die bis zum Abschluss ausgeführt wird, wenn die ursprüngliche Aufgabe erfolgreich abgeschlossen wird (entweder beim ersten Mal oder nach dem Wiederholen vorübergehender Fehler). Wenn der Vorgang mit einem nicht vorübergehenden Fehler fehlschlägt oder das Wiederholungslimit erreicht ist, wird der zurückgegebene Vorgang fehlerhaft, und die Ausnahme muss beachtet werden.

Ausnahmen

Der Vorgang ist nach der konfigurierten Anzahl von Wiederholungen nicht erfolgreich.

Hinweise

Weitere Informationen und Beispiele finden Sie unter Verbindungsresilienz und Datenbank-Wiederholungen .

Gilt für:

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

Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus und gibt das Ergebnis zurück. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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)

Typparameter

TResult

Der Ergebnistyp des Task<TResult> von zurückgegebenen operation.

Parameter

strategy
IExecutionStrategy

Die Strategie, die für die Ausführung verwendet wird.

operation
Func<CancellationToken,Task<TResult>>

Eine Funktion, die eine gestartete Aufgabe vom Typ TResultzurückgibt.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Ein Delegat, der testet, ob der Vorgang erfolgreich war, obwohl beim Commit für die Transaktion eine Ausnahme ausgelöst wurde.

cancellationToken
CancellationToken

Ein Abbruchtoken, das zum Abbrechen des Wiederholungsvorgangs verwendet wird, aber keine Vorgänge, die sich bereits im Flug befinden oder die bereits erfolgreich abgeschlossen wurden.

Gibt zurück

Task<TResult>

Eine Aufgabe, die bis zum Abschluss ausgeführt wird, wenn die ursprüngliche Aufgabe erfolgreich abgeschlossen wird (entweder beim ersten Mal oder nach dem Wiederholen vorübergehender Fehler). Wenn der Vorgang mit einem nicht vorübergehenden Fehler fehlschlägt oder das Wiederholungslimit erreicht ist, wird der zurückgegebene Vorgang fehlerhaft, und die Ausnahme muss beachtet werden.

Ausnahmen

Der Vorgang ist nach der konfigurierten Anzahl von Wiederholungen nicht erfolgreich.

Hinweise

Weitere Informationen und Beispiele finden Sie unter Verbindungsresilienz und Datenbank-Wiederholungen .

Gilt für:

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

Führt den angegebenen asynchronen Vorgang aus und gibt das Ergebnis zurück.

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)

Typparameter

TState

Der Typ des Zustands.

TResult

Der Ergebnistyp des Task<TResult> von zurückgegebenen operation.

Parameter

strategy
IExecutionStrategy

Die Strategie, die für die Ausführung verwendet wird.

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

Eine Funktion, die eine gestartete Aufgabe vom Typ TResultzurückgibt.

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

Ein Delegat, der testet, ob der Vorgang erfolgreich war, obwohl beim Commit für die Transaktion eine Ausnahme ausgelöst wurde.

state
TState

Der Zustand, der an den Vorgang übergeben wird.

context
DbContext

Der Kontext, der zum Starten der Transaktion verwendet wird.

cancellationToken
CancellationToken

Ein Abbruchtoken, das zum Abbrechen des Wiederholungsvorgangs verwendet wird, aber keine Vorgänge, die sich bereits im Flug befinden oder die bereits erfolgreich abgeschlossen wurden.

Gibt zurück

Task<TResult>

Eine Aufgabe, die bis zum Abschluss ausgeführt wird, wenn die ursprüngliche Aufgabe erfolgreich abgeschlossen wird (entweder beim ersten Mal oder nach dem Wiederholen vorübergehender Fehler). Wenn der Vorgang mit einem nicht vorübergehenden Fehler fehlschlägt oder das Wiederholungslimit erreicht ist, wird der zurückgegebene Vorgang fehlerhaft, und die Ausnahme muss beachtet werden.

Ausnahmen

Wird ausgelöst, wenn der Vorgang nach der konfigurierten Anzahl von Wiederholungen nicht erfolgreich war.

Gilt für:

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

Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus und gibt das Ergebnis zurück. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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)

Typparameter

TState

Der Typ des Zustands.

TResult

Der Ergebnistyp des Task<TResult> von zurückgegebenen operation.

Parameter

strategy
IExecutionStrategy

Die Strategie, die für die Ausführung verwendet wird.

state
TState

Der Zustand, der an den Vorgang übergeben wird.

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

Eine Funktion, die eine gestartete Aufgabe vom Typ TResultzurückgibt.

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

Ein Delegat, der testet, ob der Vorgang erfolgreich war, obwohl beim Commit für die Transaktion eine Ausnahme ausgelöst wurde.

cancellationToken
CancellationToken

Ein Abbruchtoken, das zum Abbrechen des Wiederholungsvorgangs verwendet wird, aber keine Vorgänge, die sich bereits im Flug befinden oder die bereits erfolgreich abgeschlossen wurden.

Gibt zurück

Task<TResult>

Eine Aufgabe, die bis zum Abschluss ausgeführt wird, wenn die ursprüngliche Aufgabe erfolgreich abgeschlossen wird (entweder beim ersten Mal oder nach dem Wiederholen vorübergehender Fehler). Wenn der Vorgang mit einem nicht vorübergehenden Fehler fehlschlägt oder das Wiederholungslimit erreicht ist, wird der zurückgegebene Vorgang fehlerhaft, und die Ausnahme muss beachtet werden.

Ausnahmen

Der Vorgang ist nach der konfigurierten Anzahl von Wiederholungen nicht erfolgreich.

Hinweise

Weitere Informationen und Beispiele finden Sie unter Verbindungsresilienz und Datenbank-Wiederholungen .

Gilt für:

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

Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus und gibt das Ergebnis zurück. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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)

Typparameter

TState

Der Typ des Zustands.

TResult

Der Ergebnistyp des Task<TResult> von zurückgegebenen operation.

Parameter

strategy
IExecutionStrategy

Die Strategie, die für die Ausführung verwendet wird.

state
TState

Der Zustand, der an den Vorgang übergeben wird.

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

Eine Funktion, die eine gestartete Aufgabe vom Typ TResultzurückgibt.

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

Ein Delegat, der testet, ob der Vorgang erfolgreich war, obwohl beim Commit für die Transaktion eine Ausnahme ausgelöst wurde.

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

Ein Delegat, der eine Transaktion mit dem angegebenen Kontext beginnt.

cancellationToken
CancellationToken

Ein Abbruchtoken, das zum Abbrechen des Wiederholungsvorgangs verwendet wird, aber keine Vorgänge, die sich bereits im Flug befinden oder die bereits erfolgreich abgeschlossen wurden.

Gibt zurück

Task<TResult>

Eine Aufgabe, die bis zum Abschluss ausgeführt wird, wenn die ursprüngliche Aufgabe erfolgreich abgeschlossen wird (entweder beim ersten Mal oder nach dem Wiederholen vorübergehender Fehler). Wenn der Vorgang mit einem nicht vorübergehenden Fehler fehlschlägt oder das Wiederholungslimit erreicht ist, wird der zurückgegebene Vorgang fehlerhaft, und die Ausnahme muss beachtet werden.

Ausnahmen

Der Vorgang ist nach der konfigurierten Anzahl von Wiederholungen nicht erfolgreich.

Hinweise

Weitere Informationen und Beispiele finden Sie unter Verbindungsresilienz und Datenbank-Wiederholungen .

Gilt für:

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

Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs
Quelle:
ExecutionStrategyExtensions.cs

Führt den angegebenen asynchronen Vorgang in einer Transaktion aus. Ermöglicht die Überprüfung, ob ein Rollback für die Transaktion durchgeführt wurde, wenn während des Commits ein Fehler auftritt.

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

Typparameter

TState

Der Typ des Zustands.

Parameter

strategy
IExecutionStrategy

Die Strategie, die für die Ausführung verwendet wird.

state
TState

Der Zustand, der an den Vorgang übergeben wird.

operation
Func<TState,CancellationToken,Task>

Eine Funktion, die eine gestartete Aufgabe zurückgibt.

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

Ein Delegat, der testet, ob der Vorgang erfolgreich war, obwohl beim Commit für die Transaktion eine Ausnahme ausgelöst wurde.

cancellationToken
CancellationToken

Ein Abbruchtoken, das zum Abbrechen des Wiederholungsvorgangs verwendet wird, aber keine Vorgänge, die sich bereits im Flug befinden oder die bereits erfolgreich abgeschlossen wurden.

Gibt zurück

Eine Aufgabe, die bis zum Abschluss ausgeführt wird, wenn die ursprüngliche Aufgabe erfolgreich abgeschlossen wird (entweder beim ersten Mal oder nach dem Wiederholen vorübergehender Fehler). Wenn der Vorgang mit einem nicht vorübergehenden Fehler fehlschlägt oder das Wiederholungslimit erreicht ist, wird der zurückgegebene Vorgang fehlerhaft, und die Ausnahme muss beachtet werden.

Ausnahmen

Der Vorgang ist nach der konfigurierten Anzahl von Wiederholungen nicht erfolgreich.

Hinweise

Weitere Informationen und Beispiele finden Sie unter Verbindungsresilienz und Datenbank-Wiederholungen .

Gilt für: