Class Transactions
A class for running transactional operations against a Couchbase Cluster.
Inherited Members
Namespace: Couchbase.Client.Transactions
Assembly: Couchbase.NetClient.dll
Syntax
public class Transactions : IDisposable, IAsyncDisposable
Fields
| Edit this page View SourceOpRetryDelay
A standard delay between retried operations.
Declaration
public static readonly TimeSpan OpRetryDelay
Field Value
Type | Description |
---|---|
Time |
Properties
| Edit this page View SourceConfig
Gets the Transactions
Declaration
public TransactionsConfig Config { get; }
Property Value
Type | Description |
---|---|
Transactions |
Methods
| Edit this page View SourceCreate(ICluster)
Create a Transactions instance for running transactions against the specified Cluster.
Declaration
public static Transactions Create(ICluster cluster)
Parameters
Type | Name | Description |
---|---|---|
ICluster | cluster | The cluster where your documents will be located. |
Returns
Type | Description |
---|---|
Transactions | A Transactions instance. |
Remarks
The instance returned from this method should be kept for the lifetime of your application and used like a singleton per Couchbase cluster you will be accessing.
Create(ICluster, TransactionsConfig)
Create a Transactions instance for running transactions against the specified Cluster.
Declaration
public static Transactions Create(ICluster cluster, TransactionsConfig config)
Parameters
Type | Name | Description |
---|---|---|
ICluster | cluster | The cluster where your documents will be located. |
Transactions |
config | The Transactions |
Returns
Type | Description |
---|---|
Transactions | A Transactions instance. |
Remarks
The instance returned from this method should be kept for the lifetime of your application and used like a singleton per Couchbase cluster you will be accessing.
Create(ICluster, TransactionsConfigBuilder)
Create a Transactions instance for running transactions against the specified Cluster.
Declaration
public static Transactions Create(ICluster cluster, TransactionsConfigBuilder configBuilder)
Parameters
Type | Name | Description |
---|---|---|
ICluster | cluster | The cluster where your documents will be located. |
Transactions |
configBuilder | The Transactions |
Returns
Type | Description |
---|---|
Transactions | A Transactions instance. |
Remarks
The instance returned from this method should be kept for the lifetime of your application and used like a singleton per Couchbase cluster you will be accessing.
Dispose()
Declaration
public void Dispose()
DisposeAsync()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources asynchronously.
Declaration
public ValueTask DisposeAsync()
Returns
Type | Description |
---|---|
Value |
QueryAsync<T>(string, SingleQueryTransactionConfigBuilder?, IScope?)
Run a single query as a transaction.
Declaration
public Task<SingleQueryTransactionResult<T>> QueryAsync<T>(string statement, SingleQueryTransactionConfigBuilder? config = null, IScope? scope = null)
Parameters
Type | Name | Description |
---|---|---|
string | statement | The statement to execute. |
Single |
config | The configuration to use for this transaction. |
IScope | scope | The scope |
Returns
Type | Description |
---|---|
Task<Single |
A Single |
Type Parameters
Name | Description |
---|---|
T | The type of the result. Use object for queries with no results. |
RunAsync(Func<AttemptContext, Task>)
Run a transaction against the cluster.
Declaration
public Task<TransactionResult> RunAsync(Func<AttemptContext, Task> transactionLogic)
Parameters
Type | Name | Description |
---|---|---|
Func<Attempt |
transactionLogic | A func representing the transaction logic. All data operations should use the methods on the Attempt |
Returns
Type | Description |
---|---|
Task<Transaction |
The result of the transaction. |
RunAsync(Func<AttemptContext, Task>, PerTransactionConfig)
Run a transaction against the cluster.
Declaration
public Task<TransactionResult> RunAsync(Func<AttemptContext, Task> transactionLogic, PerTransactionConfig perConfig)
Parameters
Type | Name | Description |
---|---|---|
Func<Attempt |
transactionLogic | A func representing the transaction logic. All data operations should use the methods on the Attempt |
Per |
perConfig | A config with values unique to this specific transaction. |
Returns
Type | Description |
---|---|
Task<Transaction |
The result of the transaction. |