public sealed class Transaction
Reference documentation and code samples for the Firestore API class Transaction.
A transaction, as created by RunTransactionAsync<T>(Func<Transaction, Task<T>>, TransactionOptions, CancellationToken) (and overloads) and passed to user code.
Namespace
Google.Cloud.FirestoreAssembly
Google.Cloud.Firestore.dll
Properties
CancellationToken
public CancellationToken CancellationToken { get; }
The cancellation token for this transaction
Property Value | |
---|---|
Type | Description |
CancellationToken |
Database
public FirestoreDb Database { get; }
The database for this transaction.
Property Value | |
---|---|
Type | Description |
FirestoreDb |
Methods
Create(DocumentReference, object)
public void Create(DocumentReference documentReference, object documentData)
Adds an operation to create a document in this transaction.
Parameters | |
---|---|
Name | Description |
documentReference |
DocumentReference The document reference to create. Must not be null. |
documentData |
object The data for the document. Must not be null. |
Delete(DocumentReference, Precondition)
public void Delete(DocumentReference documentReference, Precondition precondition = null)
Adds an operation to delete a document's data in this transaction.
Parameters | |
---|---|
Name | Description |
documentReference |
DocumentReference The document to delete. Must not be null. |
precondition |
Precondition Optional precondition for deletion. May be null, in which case the deletion is unconditional. |
GetAllSnapshotsAsync(IEnumerable<DocumentReference>, FieldMask, CancellationToken)
public Task<IList<DocumentSnapshot>> GetAllSnapshotsAsync(IEnumerable<DocumentReference> documentReferences, FieldMask fieldMask, CancellationToken cancellationToken = default)
Fetch snapshots of all the documents specified by documentReferences
, with respect to this transaction,
potentially limiting the fields returned.
This method cannot be called after any write operations have been created.
Parameters | |
---|---|
Name | Description |
documentReferences |
IEnumerableDocumentReference The document references to fetch. Must not be null, or contain null references. |
fieldMask |
FieldMask The field mask to use to restrict which fields are retrieved. May be null, in which case no field mask is applied, and the complete documents are retrieved. |
cancellationToken |
CancellationToken A cancellation token to monitor for the asynchronous operation. |
Returns | |
---|---|
Type | Description |
TaskSystem.Collections.Generic.IList`1DocumentSnapshot |
The document snapshots, in the same order as |
Any documents which are missing are represented in the returned list by a DocumentSnapshot
with Exists value of false
.
GetAllSnapshotsAsync(IEnumerable<DocumentReference>, CancellationToken)
public Task<IList<DocumentSnapshot>> GetAllSnapshotsAsync(IEnumerable<DocumentReference> documentReferences, CancellationToken cancellationToken = default)
Fetch snapshots of all the documents specified by documentReferences
, with respect to this transaction.
This method cannot be called after any write operations have been created.
Parameters | |
---|---|
Name | Description |
documentReferences |
IEnumerableDocumentReference The document references to fetch. Must not be null, or contain null references. |
cancellationToken |
CancellationToken A cancellation token to monitor for the asynchronous operation. |
Returns | |
---|---|
Type | Description |
TaskSystem.Collections.Generic.IList`1DocumentSnapshot |
The document snapshots, in the same order as |
Any documents which are missing are represented in the returned list by a DocumentSnapshot
with Exists value of false
.
GetSnapshotAsync(AggregateQuery, CancellationToken)
public Task<AggregateQuerySnapshot> GetSnapshotAsync(AggregateQuery query, CancellationToken cancellationToken = default)
Fetch the AggregateQuerySnapshot from the specified AggregateQuery.
Parameters | |
---|---|
Name | Description |
query |
AggregateQuery The aggregate query to execute. Must not be null. |
cancellationToken |
CancellationToken A cancellation token to monitor for the asynchronous operation. |
Returns | |
---|---|
Type | Description |
TaskAggregateQuerySnapshot |
A AggregateQuerySnapshot of results of the given query with respect to this transaction. |
GetSnapshotAsync(DocumentReference, CancellationToken)
public Task<DocumentSnapshot> GetSnapshotAsync(DocumentReference documentReference, CancellationToken cancellationToken = default)
Fetch a snapshot of the document specified by documentReference
, with respect to this transaction.
This method cannot be called after any write operations have been created.
Parameters | |
---|---|
Name | Description |
documentReference |
DocumentReference The document reference to fetch. Must not be null. |
cancellationToken |
CancellationToken A cancellation token to monitor for the asynchronous operation. |
Returns | |
---|---|
Type | Description |
TaskDocumentSnapshot |
A snapshot of the given document with respect to this transaction. |
GetSnapshotAsync(Query, CancellationToken)
public Task<QuerySnapshot> GetSnapshotAsync(Query query, CancellationToken cancellationToken = default)
Performs a query and returned a snapshot of the the results, with respect to this transaction. This method cannot be called after any write operations have been created.
Parameters | |
---|---|
Name | Description |
query |
Query The query to execute. Must not be null. |
cancellationToken |
CancellationToken A cancellation token to monitor for the asynchronous operation. |
Returns | |
---|---|
Type | Description |
TaskQuerySnapshot |
A snapshot of results of the given query with respect to this transaction. |
Set(DocumentReference, object, SetOptions)
public void Set(DocumentReference documentReference, object documentData, SetOptions options = null)
Adds an operation to set a document's data in this transaction.
Parameters | |
---|---|
Name | Description |
documentReference |
DocumentReference The document in which to set the data. Must not be null. |
documentData |
object The data for the document. Must not be null. |
options |
SetOptions The options to use when updating the document. May be null, which is equivalent to Overwrite. |
Update(DocumentReference, IDictionary<FieldPath, object>, Precondition)
public void Update(DocumentReference documentReference, IDictionary<FieldPath, object> updates, Precondition precondition = null)
Adds an operation to update a document's data in this transaction.
Parameters | |
---|---|
Name | Description |
documentReference |
DocumentReference The document to update. Must not be null. |
updates |
IDictionaryFieldPathobject The updates to perform on the document, keyed by the field path to update. Fields not present in this dictionary are not updated. Must not be null or empty. |
precondition |
Precondition Optional precondition for updating the document. May be null, which is equivalent to MustExist. |
Update(DocumentReference, IDictionary<string, object>, Precondition)
public void Update(DocumentReference documentReference, IDictionary<string, object> updates, Precondition precondition = null)
Adds an operation to update a document's data in this transaction.
Parameters | |
---|---|
Name | Description |
documentReference |
DocumentReference A document reference indicating the path of the document to update. Must not be null. |
updates |
IDictionarystringobject The updates to perform on the document, keyed by the dot-separated field path to update. Fields not present in this dictionary are not updated. Must not be null or empty. |
precondition |
Precondition Optional precondition for updating the document. May be null, which is equivalent to MustExist. |
Update(DocumentReference, string, object, Precondition)
public void Update(DocumentReference documentReference, string field, object value, Precondition precondition = null)
Adds an operation to update a document's data in this transaction.
Parameters | |
---|---|
Name | Description |
documentReference |
DocumentReference A document reference indicating the path of the document to update. Must not be null. |
field |
string The dot-separated name of the field to update. Must not be null. |
value |
object The new value for the field. May be null. |
precondition |
Precondition Optional precondition for updating the document. May be null, which is equivalent to MustExist. |